home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / Files.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  133.9 KB  |  4,636 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Files.a
  3. ;
  4. ;    Contains:    File Manager (HFS and MFS) Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1985-1997 by Apple Computer, Inc., all rights reserved
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__FILES__') = 'UNDEFINED' THEN
  19. __FILES__ SET 1
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  25.     include 'MixedMode.a'
  26.     ENDIF
  27.     IF &TYPE('__OSUTILS__') = 'UNDEFINED' THEN
  28.     include 'OSUtils.a'
  29.     ENDIF
  30.  
  31. ;  Finder constants where moved to Finder.≈ 
  32.     IF &TYPE('__FINDER__') = 'UNDEFINED' THEN
  33.     include 'Finder.a'
  34.     ENDIF
  35.  
  36.  
  37. fsAtMark                        EQU        0
  38. fsCurPerm                        EQU        0
  39. fsRdPerm                        EQU        1
  40. fInvisible                        EQU        16384
  41. fsWrPerm                        EQU        2
  42. fsRdWrPerm                        EQU        3
  43. fsRdWrShPerm                    EQU        4
  44. fsFromStart                        EQU        1
  45. fsFromLEOF                        EQU        2
  46. fsFromMark                        EQU        3
  47. rdVerify                        EQU        64
  48. ioMapBuffer                        EQU        4
  49. ioModeReserved                    EQU        8
  50. ioDirFlg                        EQU        4                    ; see IM IV-125 
  51. ioDirMask                        EQU        $10
  52. fsRtParID                        EQU        1
  53. fsRtDirID                        EQU        2
  54.  
  55.  
  56.                                                             ; CatSearch Search bitmask Constants 
  57. fsSBPartialName                    EQU        1
  58. fsSBFullName                    EQU        2
  59. fsSBFlAttrib                    EQU        4
  60. fsSBFlFndrInfo                    EQU        8
  61. fsSBFlLgLen                        EQU        32
  62. fsSBFlPyLen                        EQU        64
  63. fsSBFlRLgLen                    EQU        128
  64. fsSBFlRPyLen                    EQU        256
  65. fsSBFlCrDat                        EQU        512
  66. fsSBFlMdDat                        EQU        1024
  67. fsSBFlBkDat                        EQU        2048
  68. fsSBFlXFndrInfo                    EQU        4096
  69. fsSBFlParID                        EQU        8192
  70. fsSBNegate                        EQU        16384
  71. fsSBDrUsrWds                    EQU        8
  72. fsSBDrNmFls                        EQU        16
  73. fsSBDrCrDat                        EQU        512
  74. fsSBDrMdDat                        EQU        1024
  75. fsSBDrBkDat                        EQU        2048
  76. fsSBDrFndrInfo                    EQU        4096
  77. fsSBDrParID                        EQU        8192
  78.  
  79.                                                             ; CatSearch Search bit value Constants 
  80. fsSBPartialNameBit                EQU        0                    ;ioFileName points to a substring
  81. fsSBFullNameBit                    EQU        1                    ;ioFileName points to a match string
  82. fsSBFlAttribBit                    EQU        2                    ;search includes file attributes
  83. fsSBFlFndrInfoBit                EQU        3                    ;search includes finder info
  84. fsSBFlLgLenBit                    EQU        5                    ;search includes data logical length
  85. fsSBFlPyLenBit                    EQU        6                    ;search includes data physical length
  86. fsSBFlRLgLenBit                    EQU        7                    ;search includes resource logical length
  87. fsSBFlRPyLenBit                    EQU        8                    ;search includes resource physical length
  88. fsSBFlCrDatBit                    EQU        9                    ;search includes create date
  89. fsSBFlMdDatBit                    EQU        10                    ;search includes modification date
  90. fsSBFlBkDatBit                    EQU        11                    ;search includes backup date
  91. fsSBFlXFndrInfoBit                EQU        12                    ;search includes extended finder info
  92. fsSBFlParIDBit                    EQU        13                    ;search includes file's parent ID
  93. fsSBNegateBit                    EQU        14                    ;return all non-matches
  94. fsSBDrUsrWdsBit                    EQU        3                    ;search includes directory finder info
  95. fsSBDrNmFlsBit                    EQU        4                    ;search includes directory valence
  96. fsSBDrCrDatBit                    EQU        9                    ;directory-named version of fsSBFlCrDatBit
  97. fsSBDrMdDatBit                    EQU        10                    ;directory-named version of fsSBFlMdDatBit
  98. fsSBDrBkDatBit                    EQU        11                    ;directory-named version of fsSBFlBkDatBit
  99. fsSBDrFndrInfoBit                EQU        12                    ;directory-named version of fsSBFlXFndrInfoBit
  100. fsSBDrParIDBit                    EQU        13                    ;directory-named version of fsSBFlParIDBit
  101.  
  102.                                                             ; vMAttrib (GetVolParms) bit position constants 
  103. bLimitFCBs                        EQU        31
  104. bLocalWList                        EQU        30
  105. bNoMiniFndr                        EQU        29
  106. bNoVNEdit                        EQU        28
  107. bNoLclSync                        EQU        27
  108. bTrshOffLine                    EQU        26
  109. bNoSwitchTo                        EQU        25
  110. bNoDeskItems                    EQU        20
  111. bNoBootBlks                        EQU        19
  112. bAccessCntl                        EQU        18
  113. bNoSysDir                        EQU        17
  114. bHasExtFSVol                    EQU        16
  115. bHasOpenDeny                    EQU        15
  116. bHasCopyFile                    EQU        14
  117. bHasMoveRename                    EQU        13
  118. bHasDesktopMgr                    EQU        12
  119. bHasShortName                    EQU        11
  120. bHasFolderLock                    EQU        10
  121. bHasPersonalAccessPrivileges    EQU        9
  122. bHasUserGroupList                EQU        8
  123. bHasCatSearch                    EQU        7
  124. bHasFileIDs                        EQU        6
  125. bHasBTreeMgr                    EQU        5
  126. bHasBlankAccessPrivileges        EQU        4
  127. bSupportsAsyncRequests            EQU        3                    ; asynchronous requests to this volume are handled correctly at any time
  128.  
  129.  
  130.                                                             ; Desktop Database icon Constants 
  131. kLargeIcon                        EQU        1
  132. kLarge4BitIcon                    EQU        2
  133. kLarge8BitIcon                    EQU        3
  134. kSmallIcon                        EQU        4
  135. kSmall4BitIcon                    EQU        5
  136. kSmall8BitIcon                    EQU        6
  137.  
  138. kLargeIconSize                    EQU        256
  139. kLarge4BitIconSize                EQU        512
  140. kLarge8BitIconSize                EQU        1024
  141. kSmallIconSize                    EQU        64
  142. kSmall4BitIconSize                EQU        128
  143. kSmall8BitIconSize                EQU        256
  144.  
  145.                                                             ; Foreign Privilege Model Identifiers 
  146. fsUnixPriv                        EQU        1
  147.  
  148.                                                             ; Authentication Constants 
  149. kNoUserAuthentication            EQU        1
  150. kPassword                        EQU        2
  151. kEncryptPassword                EQU        3
  152. kTwoWayEncryptPassword            EQU        6
  153.  
  154. ;  mapping codes (ioObjType) for MapName & MapID 
  155.  
  156. kOwnerID2Name                    EQU        1
  157. kGroupID2Name                    EQU        2
  158. kOwnerName2ID                    EQU        3
  159. kGroupName2ID                    EQU        4                    ; types of oj object to be returned (ioObjType) for _GetUGEntry 
  160. kReturnNextUser                    EQU        1
  161. kReturnNextGroup                EQU        2
  162. kReturnNextUG                    EQU        3
  163.  
  164.  
  165. ;  Folder and File values of access privileges 
  166.  
  167. kfullPrivileges                    EQU        $00070007            ;            ; all privileges for everybody and owner
  168. kownerPrivileges                EQU        $00000007            ;            ; all privileges for owner only
  169. ;  values of user IDs and group IDs 
  170.  
  171. knoUser                            EQU        0
  172. kadministratorUser                EQU        1
  173.  
  174. knoGroup                        EQU        0
  175.  
  176. GetVolParmsInfoBuffer    RECORD 0
  177. vMVersion                 ds.w    1                ; offset: $0 (0)        ; version number
  178. vMAttrib                 ds.l    1                ; offset: $2 (2)        ; bit vector of attributes (see vMAttrib constants)
  179. vMLocalHand                 ds.l    1                ; offset: $6 (6)        ; handle to private data
  180. vMServerAdr                 ds.l    1                ; offset: $A (10)        ; AppleTalk server address or zero
  181. vMVolumeGrade             ds.l    1                ; offset: $E (14)        ; approx. speed rating or zero if unrated
  182. vMForeignPrivID             ds.w    1                ; offset: $12 (18)        ; foreign privilege model supported or zero if none
  183. sizeof                     EQU *                    ; size:   $14 (20)
  184.                         ENDR
  185. ; typedef ParamBlockRec *                ParmBlkPtr
  186.  
  187. IOParam                    RECORD 0
  188. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  189. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  190. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  191. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  192. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  193. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  194. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  195. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  196. ioRefNum                 ds.w    1                ; offset: $18 (24)        ; refNum for I/O operation
  197. ioVersNum                 ds.b    1                ; offset: $1A (26)        ; version number
  198. ioPermssn                 ds.b    1                ; offset: $1B (27)        ; Open: permissions (byte)
  199. ioMisc                     ds.l    1                ; offset: $1C (28)        ; Rename: new name (GetEOF,SetEOF: logical end of file) (Open: optional ptr to buffer) (SetFileType: new type)
  200. ioBuffer                 ds.l    1                ; offset: $20 (32)        ; data buffer Ptr
  201. ioReqCount                 ds.l    1                ; offset: $24 (36)        ; requested byte count; also = ioNewDirID
  202. ioActCount                 ds.l    1                ; offset: $28 (40)        ; actual byte count completed
  203. ioPosMode                 ds.w    1                ; offset: $2C (44)        ; initial file positioning
  204. ioPosOffset                 ds.l    1                ; offset: $2E (46)        ; file position offset
  205. sizeof                     EQU *                    ; size:   $32 (50)
  206.                         ENDR
  207. ; typedef struct IOParam *                IOParamPtr
  208.  
  209. FileParam                RECORD 0
  210. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  211. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  212. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  213. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  214. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  215. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  216. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  217. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  218. ioFRefNum                 ds.w    1                ; offset: $18 (24)        ; reference number
  219. ioFVersNum                 ds.b    1                ; offset: $1A (26)        ; version number
  220. filler1                     ds.b    1                ; offset: $1B (27)
  221. ioFDirIndex                 ds.w    1                ; offset: $1C (28)        ; GetFInfo directory index
  222. ioFlAttrib                 ds.b    1                ; offset: $1E (30)        ; GetFInfo: in-use bit=7, lock bit=0
  223. ioFlVersNum                 ds.b    1                ; offset: $1F (31)        ; file version number
  224. ioFlFndrInfo             ds        FInfo            ; offset: $20 (32)        ; user info
  225. ioFlNum                     ds.l    1                ; offset: $30 (48)        ; GetFInfo: file number; TF- ioDirID
  226. ioFlStBlk                 ds.w    1                ; offset: $34 (52)        ; start file block (0 if none)
  227. ioFlLgLen                 ds.l    1                ; offset: $36 (54)        ; logical length (EOF)
  228. ioFlPyLen                 ds.l    1                ; offset: $3A (58)        ; physical length
  229. ioFlRStBlk                 ds.w    1                ; offset: $3E (62)        ; start block rsrc fork
  230. ioFlRLgLen                 ds.l    1                ; offset: $40 (64)        ; file logical length rsrc fork
  231. ioFlRPyLen                 ds.l    1                ; offset: $44 (68)        ; file physical length rsrc fork
  232. ioFlCrDat                 ds.l    1                ; offset: $48 (72)        ; file creation date& time (32 bits in secs)
  233. ioFlMdDat                 ds.l    1                ; offset: $4C (76)        ; last modified date and time
  234. sizeof                     EQU *                    ; size:   $50 (80)
  235.                         ENDR
  236. ; typedef struct FileParam *            FileParamPtr
  237.  
  238. VolumeParam                RECORD 0
  239. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  240. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  241. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  242. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  243. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  244. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  245. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  246. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  247. filler2                     ds.l    1                ; offset: $18 (24)
  248. ioVolIndex                 ds.w    1                ; offset: $1C (28)        ; volume index number
  249. ioVCrDate                 ds.l    1                ; offset: $1E (30)        ; creation date and time
  250. ioVLsBkUp                 ds.l    1                ; offset: $22 (34)        ; last backup date and time
  251. ioVAtrb                     ds.w    1                ; offset: $26 (38)        ; volume attrib
  252. ioVNmFls                 ds.w    1                ; offset: $28 (40)        ; number of files in directory
  253. ioVDirSt                 ds.w    1                ; offset: $2A (42)        ; start block of file directory
  254. ioVBlLn                     ds.w    1                ; offset: $2C (44)        ; GetVolInfo: length of dir in blocks
  255. ioVNmAlBlks                 ds.w    1                ; offset: $2E (46)        ; for compatibilty ioVNmAlBlks * ioVAlBlkSiz <= 2 GB
  256. ioVAlBlkSiz                 ds.l    1                ; offset: $30 (48)        ; for compatibilty ioVAlBlkSiz is <= $0000FE00 (65,024)
  257. ioVClpSiz                 ds.l    1                ; offset: $34 (52)        ; GetVolInfo: bytes to allocate at a time
  258. ioAlBlSt                 ds.w    1                ; offset: $38 (56)        ; starting disk(512-byte) block in block map
  259. ioVNxtFNum                 ds.l    1                ; offset: $3A (58)        ; GetVolInfo: next free file number
  260. ioVFrBlk                 ds.w    1                ; offset: $3E (62)        ; GetVolInfo: # free alloc blks for this vol
  261. sizeof                     EQU *                    ; size:   $40 (64)
  262.                         ENDR
  263. ; typedef struct VolumeParam *            VolumeParamPtr
  264.  
  265. CntrlParam                RECORD 0
  266. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  267. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  268. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  269. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  270. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  271. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  272. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  273. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  274. ioCRefNum                 ds.w    1                ; offset: $18 (24)        ; refNum for I/O operation
  275. csCode                     ds.w    1                ; offset: $1A (26)        ; word for control status code
  276. csParam                     ds.w    11                ; offset: $1C (28)        ; operation-defined parameters
  277. sizeof                     EQU *                    ; size:   $32 (50)
  278.                         ENDR
  279. ; typedef struct CntrlParam *            CntrlParamPtr
  280.  
  281. SlotDevParam            RECORD 0
  282. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  283. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  284. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  285. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  286. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  287. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  288. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  289. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  290. ioSRefNum                 ds.w    1                ; offset: $18 (24)
  291. ioSVersNum                 ds.b    1                ; offset: $1A (26)
  292. ioSPermssn                 ds.b    1                ; offset: $1B (27)
  293. ioSMix                     ds.l    1                ; offset: $1C (28)
  294. ioSFlags                 ds.w    1                ; offset: $20 (32)
  295. ioSlot                     ds.b    1                ; offset: $22 (34)
  296. ioID                     ds.b    1                ; offset: $23 (35)
  297. sizeof                     EQU *                    ; size:   $24 (36)
  298.                         ENDR
  299. ; typedef struct SlotDevParam *            SlotDevParamPtr
  300.  
  301. MultiDevParam            RECORD 0
  302. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  303. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  304. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  305. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  306. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  307. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  308. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  309. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  310. ioMRefNum                 ds.w    1                ; offset: $18 (24)
  311. ioMVersNum                 ds.b    1                ; offset: $1A (26)
  312. ioMPermssn                 ds.b    1                ; offset: $1B (27)
  313. ioMMix                     ds.l    1                ; offset: $1C (28)
  314. ioMFlags                 ds.w    1                ; offset: $20 (32)
  315. ioSEBlkPtr                 ds.l    1                ; offset: $22 (34)
  316. sizeof                     EQU *                    ; size:   $26 (38)
  317.                         ENDR
  318. ; typedef struct MultiDevParam *        MultiDevParamPtr
  319.  
  320. ParamBlockRec            RECORD 0
  321. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  322. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  323. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  324. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  325. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  326. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  327. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  328. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  329. ioRefNum                 ds.w    1                ; offset: $18 (24)        ; refNum for I/O operation
  330. ioVersNum                 ds.b    1                ; offset: $1A (26)        ; version number
  331. ioPermssn                 ds.b    1                ; offset: $1B (27)        ; Open: permissions (byte)
  332. ioMisc                     ds.l    1                ; offset: $1C (28)        ; Rename: new name (GetEOF,SetEOF: logical end of file) (Open: optional ptr to buffer) (SetFileType: new type)
  333. ioBuffer                 ds.l    1                ; offset: $20 (32)        ; data buffer Ptr
  334. ioReqCount                 ds.l    1                ; offset: $24 (36)        ; requested byte count; also = ioNewDirID
  335. ioActCount                 ds.l    1                ; offset: $28 (40)        ; actual byte count completed
  336. ioPosMode                 ds.w    1                ; offset: $2C (44)        ; initial file positioning
  337. ioPosOffset                 ds.l    1                ; offset: $2E (46)        ; file position offset
  338.                          ORG 24
  339. ioFRefNum                 ds.w    1                ; offset: $18 (24)        ; reference number
  340. ioFVersNum                 ds.b    1                ; offset: $1A (26)        ; version number
  341. filler1                     ds.b    1                ; offset: $1B (27)
  342. ioFDirIndex                 ds.w    1                ; offset: $1C (28)        ; GetFInfo directory index
  343. ioFlAttrib                 ds.b    1                ; offset: $1E (30)        ; GetFInfo: in-use bit=7, lock bit=0
  344. ioFlVersNum                 ds.b    1                ; offset: $1F (31)        ; file version number
  345. ioFlFndrInfo             ds        FInfo            ; offset: $20 (32)        ; user info
  346. ioFlNum                     ds.l    1                ; offset: $30 (48)        ; GetFInfo: file number; TF- ioDirID
  347. ioFlStBlk                 ds.w    1                ; offset: $34 (52)        ; start file block (0 if none)
  348. ioFlLgLen                 ds.l    1                ; offset: $36 (54)        ; logical length (EOF)
  349. ioFlPyLen                 ds.l    1                ; offset: $3A (58)        ; physical length
  350. ioFlRStBlk                 ds.w    1                ; offset: $3E (62)        ; start block rsrc fork
  351. ioFlRLgLen                 ds.l    1                ; offset: $40 (64)        ; file logical length rsrc fork
  352. ioFlRPyLen                 ds.l    1                ; offset: $44 (68)        ; file physical length rsrc fork
  353. ioFlCrDat                 ds.l    1                ; offset: $48 (72)        ; file creation date& time (32 bits in secs)
  354. ioFlMdDat                 ds.l    1                ; offset: $4C (76)        ; last modified date and time
  355.                          ORG 24
  356. filler2                     ds.l    1                ; offset: $18 (24)
  357. ioVolIndex                 ds.w    1                ; offset: $1C (28)        ; volume index number
  358. ioVCrDate                 ds.l    1                ; offset: $1E (30)        ; creation date and time
  359. ioVLsBkUp                 ds.l    1                ; offset: $22 (34)        ; last backup date and time
  360. ioVAtrb                     ds.w    1                ; offset: $26 (38)        ; volume attrib
  361. ioVNmFls                 ds.w    1                ; offset: $28 (40)        ; number of files in directory
  362. ioVDirSt                 ds.w    1                ; offset: $2A (42)        ; start block of file directory
  363. ioVBlLn                     ds.w    1                ; offset: $2C (44)        ; GetVolInfo: length of dir in blocks
  364. ioVNmAlBlks                 ds.w    1                ; offset: $2E (46)        ; for compatibilty ioVNmAlBlks * ioVAlBlkSiz <= 2 GB
  365. ioVAlBlkSiz                 ds.l    1                ; offset: $30 (48)        ; for compatibilty ioVAlBlkSiz is <= $0000FE00 (65,024)
  366. ioVClpSiz                 ds.l    1                ; offset: $34 (52)        ; GetVolInfo: bytes to allocate at a time
  367. ioAlBlSt                 ds.w    1                ; offset: $38 (56)        ; starting disk(512-byte) block in block map
  368. ioVNxtFNum                 ds.l    1                ; offset: $3A (58)        ; GetVolInfo: next free file number
  369. ioVFrBlk                 ds.w    1                ; offset: $3E (62)        ; GetVolInfo: # free alloc blks for this vol
  370.                          ORG 24
  371. ioCRefNum                 ds.w    1                ; offset: $18 (24)        ; refNum for I/O operation
  372. csCode                     ds.w    1                ; offset: $1A (26)        ; word for control status code
  373. csParam                     ds.w    11                ; offset: $1C (28)        ; operation-defined parameters
  374.                          ORG 24
  375. ioSRefNum                 ds.w    1                ; offset: $18 (24)
  376. ioSVersNum                 ds.b    1                ; offset: $1A (26)
  377. ioSPermssn                 ds.b    1                ; offset: $1B (27)
  378. ioSMix                     ds.l    1                ; offset: $1C (28)
  379. ioSFlags                 ds.w    1                ; offset: $20 (32)
  380. ioSlot                     ds.b    1                ; offset: $22 (34)
  381. ioID                     ds.b    1                ; offset: $23 (35)
  382.                          ORG 24
  383. ioMRefNum                 ds.w    1                ; offset: $18 (24)
  384. ioMVersNum                 ds.b    1                ; offset: $1A (26)
  385. ioMPermssn                 ds.b    1                ; offset: $1B (27)
  386. ioMMix                     ds.l    1                ; offset: $1C (28)
  387. ioMFlags                 ds.w    1                ; offset: $20 (32)
  388. ioSEBlkPtr                 ds.l    1                ; offset: $22 (34)
  389.                          ORG 80
  390. sizeof                     EQU *                    ; size:   $50 (80)
  391.                         ENDR
  392. CInfoPBRec                RECORD 0
  393. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  394. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  395. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  396. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  397. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  398. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  399. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  400. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  401. ioFRefNum                 ds.w    1                ; offset: $18 (24)
  402. ioFVersNum                 ds.b    1                ; offset: $1A (26)
  403. filler1                     ds.b    1                ; offset: $1B (27)
  404. ioFDirIndex                 ds.w    1                ; offset: $1C (28)
  405. ioFlAttrib                 ds.b    1                ; offset: $1E (30)
  406. ioACUser                 ds.b    1                ; offset: $1F (31)
  407. ioFlFndrInfo             ds        FInfo            ; offset: $20 (32)
  408. ioDirID                     ds.l    1                ; offset: $30 (48)
  409. ioFlStBlk                 ds.w    1                ; offset: $34 (52)
  410. ioFlLgLen                 ds.l    1                ; offset: $36 (54)
  411. ioFlPyLen                 ds.l    1                ; offset: $3A (58)
  412. ioFlRStBlk                 ds.w    1                ; offset: $3E (62)
  413. ioFlRLgLen                 ds.l    1                ; offset: $40 (64)
  414. ioFlRPyLen                 ds.l    1                ; offset: $44 (68)
  415. ioFlCrDat                 ds.l    1                ; offset: $48 (72)
  416. ioFlMdDat                 ds.l    1                ; offset: $4C (76)
  417. ioFlBkDat                 ds.l    1                ; offset: $50 (80)
  418. ioFlXFndrInfo             ds        FXInfo            ; offset: $54 (84)
  419. ioFlParID                 ds.l    1                ; offset: $64 (100)
  420. ioFlClpSiz                 ds.l    1                ; offset: $68 (104)
  421.                          ORG 32
  422. ioDrUsrWds                 ds        DInfo            ; offset: $20 (32)
  423. ioDrDirID                 ds.l    1                ; offset: $30 (48)
  424. ioDrNmFls                 ds.w    1                ; offset: $34 (52)
  425. filler3                     ds.w    9                ; offset: $36 (54)
  426. ioDrCrDat                 ds.l    1                ; offset: $48 (72)
  427. ioDrMdDat                 ds.l    1                ; offset: $4C (76)
  428. ioDrBkDat                 ds.l    1                ; offset: $50 (80)
  429. ioDrFndrInfo             ds        DXInfo            ; offset: $54 (84)
  430. ioDrParID                 ds.l    1                ; offset: $64 (100)
  431.                          ORG 108
  432. sizeof                     EQU *                    ; size:   $6C (108)
  433.                         ENDR
  434. ; typedef struct CInfoPBRec *            CInfoPBPtr
  435.  
  436. XCInfoPBRec                RECORD 0
  437. qLink                     ds.l    1                ; offset: $0 (0)
  438. qType                     ds.w    1                ; offset: $4 (4)
  439. ioTrap                     ds.w    1                ; offset: $6 (6)
  440. ioCmdAddr                 ds.l    1                ; offset: $8 (8)
  441. ioCompletion             ds.l    1                ; offset: $C (12)        ;  --> A pointer to a completion routine 
  442. ioResult                 ds.w    1                ; offset: $10 (16)        ;  --> The result code of the function 
  443. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ;  --> Pointer to pathname to object 
  444. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ;  --> A volume specification 
  445. filler1                     ds.l    1                ; offset: $18 (24)
  446. ioShortNamePtr             ds.l    1                ; offset: $1C (28)        ;  <-> A pointer to the short name string buffer - required! 
  447. filler2                     ds.w    1                ; offset: $20 (32)
  448. ioPDType                 ds.w    1                ; offset: $22 (34)        ;  <-- The ProDOS file type 
  449. ioPDAuxType                 ds.l    1                ; offset: $24 (36)        ;  <-- The ProDOS aux type 
  450. filler3                     ds.l    2                ; offset: $28 (40)
  451. ioDirID                     ds.l    1                ; offset: $30 (48)        ;  --> A directory ID 
  452. sizeof                     EQU *                    ; size:   $34 (52)
  453.                         ENDR
  454. ; typedef struct XCInfoPBRec *            XCInfoPBPtr
  455.  
  456. ;  Catalog position record 
  457. CatPositionRec            RECORD 0
  458. initialize                 ds.l    1                ; offset: $0 (0)
  459. priv                     ds.w    6                ; offset: $4 (4)
  460. sizeof                     EQU *                    ; size:   $10 (16)
  461.                         ENDR
  462. FSSpec                    RECORD 0
  463. vRefNum                     ds.w    1                ; offset: $0 (0)
  464. parID                     ds.l    1                ; offset: $2 (2)
  465. name                     ds        Str63            ; offset: $6 (6)
  466. sizeof                     EQU *                    ; size:   $46 (70)
  467.                         ENDR
  468. ; typedef struct FSSpec *                FSSpecPtr
  469.  
  470. ; typedef FSSpecPtr *                    FSSpecHandle
  471.  
  472. ;  pointer to array of FSSpecs 
  473. ;  
  474. ;    The only difference between "const FSSpec*" and "ConstFSSpecPtr" is 
  475. ;    that as a parameter, ConstFSSpecPtr is allowed to be NULL 
  476. ;
  477.  
  478. ; typedef const struct FSSpec *            ConstFSSpecPtr
  479.  
  480.  
  481. ;  
  482. ;    The following are structures to be filled out with the _PBGetVolMountInfo call
  483. ;    and passed back into the _PBVolumeMount call for external file system mounts. 
  484. ;
  485.  
  486. ;  the "signature" of the file system 
  487. ; typedef OSType                         VolumeType
  488.  
  489.  
  490.                                                             ; the signature for AppleShare 
  491. AppleShareMediaType                EQU        'afpm'
  492. ;    VolMount stuff was once in FSM.≈
  493. ;
  494.  
  495. VolMountInfoHeader        RECORD 0
  496. length                     ds.w    1                ; offset: $0 (0)        ;  length of location data (including self) 
  497. media                     ds.l    1                ; offset: $2 (2)        ;  type of media.  Variable length data follows 
  498. sizeof                     EQU *                    ; size:   $6 (6)
  499.                         ENDR
  500. ; typedef struct VolMountInfoHeader *    VolMountInfoPtr
  501.  
  502. ;  The new volume mount info record.  The old one is included for compatibility. 
  503. ;    the new record allows access by foriegn filesystems writers to the flags 
  504. ;    portion of the record. This portion is now public.  
  505. ;
  506.  
  507. VolumeMountInfoHeader    RECORD 0
  508. length                     ds.w    1                ; offset: $0 (0)        ;  length of location data (including self) 
  509. media                     ds.l    1                ; offset: $2 (2)        ;  type of media (must be registered with Apple) 
  510. flags                     ds.w    1                ; offset: $6 (6)        ;  volume mount flags. Variable length data follows 
  511. sizeof                     EQU *                    ; size:   $8 (8)
  512.                         ENDR
  513. ; typedef struct VolumeMountInfoHeader * VolumeMountInfoHeaderPtr
  514.  
  515. ;  volume mount flags 
  516.  
  517. volMountNoLoginMsgFlagBit        EQU        0                    ; Input to VolumeMount: If set, the file system 
  518. volMountNoLoginMsgFlagMask        EQU        $0001                ;  should suppresss any log-in message/greeting dialog 
  519. volMountExtendedFlagsBit        EQU        7                    ; Input to VolumeMount: If set, the mount info is a 
  520. volMountExtendedFlagsMask        EQU        $0080                ;  AFPXVolMountInfo record for 3.7 AppleShare Client 
  521. volMountInteractBit                EQU        15                    ; Input to VolumeMount: If set, it's OK for the file system 
  522. volMountInteractMask            EQU        $8000                ;  to perform user interaction to mount the volume 
  523. volMountChangedBit                EQU        14                    ; Output from VoumeMount: If set, the volume was mounted, but 
  524. volMountChangedMask                EQU        $4000                ;  the volume mounting information record needs to be updated. 
  525. volMountFSReservedMask            EQU        $00FF                ; bits 0-7 are defined by each file system for its own use 
  526. volMountSysReservedMask            EQU        $FF00                ; bits 8-15 are reserved for Apple system use 
  527.  
  528.  
  529. AFPVolMountInfo            RECORD 0
  530. length                     ds.w    1                ; offset: $0 (0)        ;  length of location data (including self) 
  531. media                     ds.l    1                ; offset: $2 (2)        ;  type of media 
  532. flags                     ds.w    1                ; offset: $6 (6)        ;  bits for no messages, no reconnect 
  533. nbpInterval                 ds.b    1                ; offset: $8 (8)        ;  NBP Interval parameter (IM2, p.322) 
  534. nbpCount                 ds.b    1                ; offset: $9 (9)        ;  NBP Interval parameter (IM2, p.322) 
  535. uamType                     ds.w    1                ; offset: $A (10)        ;  User Authentication Method 
  536. zoneNameOffset             ds.w    1                ; offset: $C (12)        ;  short positive offset from start of struct to Zone Name 
  537. serverNameOffset         ds.w    1                ; offset: $E (14)        ;  offset to pascal Server Name string 
  538. volNameOffset             ds.w    1                ; offset: $10 (16)        ;  offset to pascal Volume Name string 
  539. userNameOffset             ds.w    1                ; offset: $12 (18)        ;  offset to pascal User Name string 
  540. userPasswordOffset         ds.w    1                ; offset: $14 (20)        ;  offset to pascal User Password string 
  541. volPasswordOffset         ds.w    1                ; offset: $16 (22)        ;  offset to pascal Volume Password string 
  542. AFPData                     ds.b    144                ; offset: $18 (24)        ;  variable length data may follow 
  543. sizeof                     EQU *                    ; size:   $A8 (168)
  544.                         ENDR
  545. ; typedef struct AFPVolMountInfo *        AFPVolMountInfoPtr
  546.  
  547.  
  548.  
  549. ;  AFPXVolMountInfo is the new AFP volume mount info record, requires the 3.7 AppleShare Client 
  550. AFPXVolMountInfo        RECORD 0
  551. length                     ds.w    1                ; offset: $0 (0)        ;  length of location data (including self) 
  552. media                     ds.l    1                ; offset: $2 (2)        ;  type of media 
  553. flags                     ds.w    1                ; offset: $6 (6)        ;  bits for no messages, no reconnect 
  554. nbpInterval                 ds.b    1                ; offset: $8 (8)        ;  NBP Interval parameter (IM2, p.322) 
  555. nbpCount                 ds.b    1                ; offset: $9 (9)        ;  NBP Interval parameter (IM2, p.322) 
  556. uamType                     ds.w    1                ; offset: $A (10)        ;  User Authentication Method type 
  557. zoneNameOffset             ds.w    1                ; offset: $C (12)        ;  short positive offset from start of struct to Zone Name 
  558. serverNameOffset         ds.w    1                ; offset: $E (14)        ;  offset to pascal Server Name string 
  559. volNameOffset             ds.w    1                ; offset: $10 (16)        ;  offset to pascal Volume Name string 
  560. userNameOffset             ds.w    1                ; offset: $12 (18)        ;  offset to pascal User Name string 
  561. userPasswordOffset         ds.w    1                ; offset: $14 (20)        ;  offset to pascal User Password string 
  562. volPasswordOffset         ds.w    1                ; offset: $16 (22)        ;  offset to pascal Volume Password string 
  563. extendedFlags             ds.w    1                ; offset: $18 (24)        ;  extended flags word 
  564. uamNameOffset             ds.w    1                ; offset: $1A (26)        ;  offset to a pascal UAM name string 
  565. alternateAddressOffset     ds.w    1                ; offset: $1C (28)        ;  offset to Alternate Addresses in tagged format 
  566. AFPData                     ds.b    176                ; offset: $1E (30)        ;  variable length data may follow 
  567. sizeof                     EQU *                    ; size:   $CE (206)
  568.                         ENDR
  569. ; typedef struct AFPXVolMountInfo *        AFPXVolMountInfoPtr
  570.  
  571.  
  572. kAFPExtendedFlagsAlternateAddressMask EQU 1                    ;  bit in AFPXVolMountInfo.extendedFlags that means alternateAddressOffset is used
  573.  
  574.  
  575.                                                             ; constants for use in AFPTagData.fType field
  576. kAFPTagTypeIP                    EQU        $01
  577. kAFPTagTypeIPPort                EQU        $02
  578. kAFPTagTypeDDP                    EQU        $03                    ; Currently unused
  579.  
  580.  
  581.                                                             ; constants for use in AFPTagData.fLength field
  582. kAFPTagLengthIP                    EQU        $06
  583. kAFPTagLengthIPPort                EQU        $08
  584. kAFPTagLengthDDP                EQU        $06
  585. AFPTagData                RECORD 0
  586. fLength                     ds.b    1                ; offset: $0 (0)        ;  length of this data tag including the fLength field 
  587. fType                     ds.b    1                ; offset: $1 (1)
  588. fData                     ds.b    1                ; offset: $2 (2) <-- really an array of length one ;  variable length data 
  589.                          ORG 4
  590. sizeof                     EQU *                    ; size:   $4 (4)
  591.                         ENDR
  592. AFPAlternateAddress        RECORD 0
  593. fAddressCount             ds.b    1                ; offset: $0 (0)
  594. fAddressList             ds.b    1                ; offset: $1 (1) <-- really an array of length one ;  actually variable length packed set of AFPTagData 
  595. sizeof                     EQU *                    ; size:   $2 (2)
  596.                         ENDR
  597.  
  598.  
  599. DTPBRec                    RECORD 0
  600. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  601. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  602. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  603. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  604. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  605. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  606. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  607. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  608. ioDTRefNum                 ds.w    1                ; offset: $18 (24)        ;  desktop refnum 
  609. ioIndex                     ds.w    1                ; offset: $1A (26)
  610. ioTagInfo                 ds.l    1                ; offset: $1C (28)
  611. ioDTBuffer                 ds.l    1                ; offset: $20 (32)
  612. ioDTReqCount             ds.l    1                ; offset: $24 (36)
  613. ioDTActCount             ds.l    1                ; offset: $28 (40)
  614. ioFiller1                 ds.b    1                ; offset: $2C (44)
  615. ioIconType                 ds.b    1                ; offset: $2D (45)
  616. ioFiller2                 ds.w    1                ; offset: $2E (46)
  617. ioDirID                     ds.l    1                ; offset: $30 (48)
  618. ioFileCreator             ds.l    1                ; offset: $34 (52)
  619. ioFileType                 ds.l    1                ; offset: $38 (56)
  620. ioFiller3                 ds.l    1                ; offset: $3C (60)
  621. ioDTLgLen                 ds.l    1                ; offset: $40 (64)
  622. ioDTPyLen                 ds.l    1                ; offset: $44 (68)
  623. ioFiller4                 ds.w    14                ; offset: $48 (72)
  624. ioAPPLParID                 ds.l    1                ; offset: $64 (100)
  625. sizeof                     EQU *                    ; size:   $68 (104)
  626.                         ENDR
  627. ; typedef struct DTPBRec *                DTPBPtr
  628.  
  629. HIOParam                RECORD 0
  630. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  631. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  632. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  633. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  634. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  635. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  636. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  637. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  638. ioRefNum                 ds.w    1                ; offset: $18 (24)
  639. ioVersNum                 ds.b    1                ; offset: $1A (26)
  640. ioPermssn                 ds.b    1                ; offset: $1B (27)
  641. ioMisc                     ds.l    1                ; offset: $1C (28)
  642. ioBuffer                 ds.l    1                ; offset: $20 (32)
  643. ioReqCount                 ds.l    1                ; offset: $24 (36)
  644. ioActCount                 ds.l    1                ; offset: $28 (40)
  645. ioPosMode                 ds.w    1                ; offset: $2C (44)
  646. ioPosOffset                 ds.l    1                ; offset: $2E (46)
  647. sizeof                     EQU *                    ; size:   $32 (50)
  648.                         ENDR
  649. ; typedef struct HIOParam *                HIOParamPtr
  650.  
  651. HFileParam                RECORD 0
  652. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  653. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  654. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  655. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  656. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  657. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  658. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  659. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  660. ioFRefNum                 ds.w    1                ; offset: $18 (24)
  661. ioFVersNum                 ds.b    1                ; offset: $1A (26)
  662. filler1                     ds.b    1                ; offset: $1B (27)
  663. ioFDirIndex                 ds.w    1                ; offset: $1C (28)
  664. ioFlAttrib                 ds.b    1                ; offset: $1E (30)
  665. ioFlVersNum                 ds.b    1                ; offset: $1F (31)
  666. ioFlFndrInfo             ds        FInfo            ; offset: $20 (32)
  667. ioDirID                     ds.l    1                ; offset: $30 (48)
  668. ioFlStBlk                 ds.w    1                ; offset: $34 (52)
  669. ioFlLgLen                 ds.l    1                ; offset: $36 (54)
  670. ioFlPyLen                 ds.l    1                ; offset: $3A (58)
  671. ioFlRStBlk                 ds.w    1                ; offset: $3E (62)
  672. ioFlRLgLen                 ds.l    1                ; offset: $40 (64)
  673. ioFlRPyLen                 ds.l    1                ; offset: $44 (68)
  674. ioFlCrDat                 ds.l    1                ; offset: $48 (72)
  675. ioFlMdDat                 ds.l    1                ; offset: $4C (76)
  676. sizeof                     EQU *                    ; size:   $50 (80)
  677.                         ENDR
  678. ; typedef struct HFileParam *            HFileParamPtr
  679.  
  680. HVolumeParam            RECORD 0
  681. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  682. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  683. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  684. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  685. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  686. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  687. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  688. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  689. filler2                     ds.l    1                ; offset: $18 (24)
  690. ioVolIndex                 ds.w    1                ; offset: $1C (28)
  691. ioVCrDate                 ds.l    1                ; offset: $1E (30)
  692. ioVLsMod                 ds.l    1                ; offset: $22 (34)
  693. ioVAtrb                     ds.w    1                ; offset: $26 (38)
  694. ioVNmFls                 ds.w    1                ; offset: $28 (40)
  695. ioVBitMap                 ds.w    1                ; offset: $2A (42)
  696. ioAllocPtr                 ds.w    1                ; offset: $2C (44)
  697. ioVNmAlBlks                 ds.w    1                ; offset: $2E (46)
  698. ioVAlBlkSiz                 ds.l    1                ; offset: $30 (48)
  699. ioVClpSiz                 ds.l    1                ; offset: $34 (52)
  700. ioAlBlSt                 ds.w    1                ; offset: $38 (56)
  701. ioVNxtCNID                 ds.l    1                ; offset: $3A (58)
  702. ioVFrBlk                 ds.w    1                ; offset: $3E (62)
  703. ioVSigWord                 ds.w    1                ; offset: $40 (64)
  704. ioVDrvInfo                 ds.w    1                ; offset: $42 (66)
  705. ioVDRefNum                 ds.w    1                ; offset: $44 (68)
  706. ioVFSID                     ds.w    1                ; offset: $46 (70)
  707. ioVBkUp                     ds.l    1                ; offset: $48 (72)
  708. ioVSeqNum                 ds.w    1                ; offset: $4C (76)
  709. ioVWrCnt                 ds.l    1                ; offset: $4E (78)
  710. ioVFilCnt                 ds.l    1                ; offset: $52 (82)
  711. ioVDirCnt                 ds.l    1                ; offset: $56 (86)
  712. ioVFndrInfo                 ds.l    8                ; offset: $5A (90)
  713. sizeof                     EQU *                    ; size:   $7A (122)
  714.                         ENDR
  715. ; typedef struct HVolumeParam *            HVolumeParamPtr
  716.  
  717.  
  718.                                                             ; Large Volume Constants 
  719. kWidePosOffsetBit                EQU        8
  720. kMaximumBlocksIn4GB                EQU        $007FFFFF
  721. XIOParam                RECORD 0
  722. qLink                     ds.l    1                ; offset: $0 (0)
  723. qType                     ds.w    1                ; offset: $4 (4)
  724. ioTrap                     ds.w    1                ; offset: $6 (6)
  725. ioCmdAddr                 ds.l    1                ; offset: $8 (8)
  726. ioCompletion             ds.l    1                ; offset: $C (12)
  727. ioResult                 ds.w    1                ; offset: $10 (16)
  728. ioNamePtr                 ds.l    1                ; offset: $12 (18)
  729. ioVRefNum                 ds.w    1                ; offset: $16 (22)
  730. ioRefNum                 ds.w    1                ; offset: $18 (24)
  731. ioVersNum                 ds.b    1                ; offset: $1A (26)
  732. ioPermssn                 ds.b    1                ; offset: $1B (27)
  733. ioMisc                     ds.l    1                ; offset: $1C (28)
  734. ioBuffer                 ds.l    1                ; offset: $20 (32)
  735. ioReqCount                 ds.l    1                ; offset: $24 (36)
  736. ioActCount                 ds.l    1                ; offset: $28 (40)
  737. ioPosMode                 ds.w    1                ; offset: $2C (44)        ;  must have kUseWidePositioning bit set 
  738. ioWPosOffset             ds        wide            ; offset: $2E (46)        ;  wide positioning offset 
  739. sizeof                     EQU *                    ; size:   $36 (54)
  740.                         ENDR
  741. ; typedef struct XIOParam *                XIOParamPtr
  742.  
  743. XVolumeParam            RECORD 0
  744. qLink                     ds.l    1                ; offset: $0 (0)
  745. qType                     ds.w    1                ; offset: $4 (4)
  746. ioTrap                     ds.w    1                ; offset: $6 (6)
  747. ioCmdAddr                 ds.l    1                ; offset: $8 (8)
  748. ioCompletion             ds.l    1                ; offset: $C (12)
  749. ioResult                 ds.w    1                ; offset: $10 (16)
  750. ioNamePtr                 ds.l    1                ; offset: $12 (18)
  751. ioVRefNum                 ds.w    1                ; offset: $16 (22)
  752. ioXVersion                 ds.l    1                ; offset: $18 (24)        ;  this XVolumeParam version (0) 
  753. ioVolIndex                 ds.w    1                ; offset: $1C (28)
  754. ioVCrDate                 ds.l    1                ; offset: $1E (30)
  755. ioVLsMod                 ds.l    1                ; offset: $22 (34)
  756. ioVAtrb                     ds.w    1                ; offset: $26 (38)
  757. ioVNmFls                 ds.w    1                ; offset: $28 (40)
  758. ioVBitMap                 ds.w    1                ; offset: $2A (42)
  759. ioAllocPtr                 ds.w    1                ; offset: $2C (44)
  760. ioVNmAlBlks                 ds.w    1                ; offset: $2E (46)
  761. ioVAlBlkSiz                 ds.l    1                ; offset: $30 (48)
  762. ioVClpSiz                 ds.l    1                ; offset: $34 (52)
  763. ioAlBlSt                 ds.w    1                ; offset: $38 (56)
  764. ioVNxtCNID                 ds.l    1                ; offset: $3A (58)
  765. ioVFrBlk                 ds.w    1                ; offset: $3E (62)
  766. ioVSigWord                 ds.w    1                ; offset: $40 (64)
  767. ioVDrvInfo                 ds.w    1                ; offset: $42 (66)
  768. ioVDRefNum                 ds.w    1                ; offset: $44 (68)
  769. ioVFSID                     ds.w    1                ; offset: $46 (70)
  770. ioVBkUp                     ds.l    1                ; offset: $48 (72)
  771. ioVSeqNum                 ds.w    1                ; offset: $4C (76)
  772. ioVWrCnt                 ds.l    1                ; offset: $4E (78)
  773. ioVFilCnt                 ds.l    1                ; offset: $52 (82)
  774. ioVDirCnt                 ds.l    1                ; offset: $56 (86)
  775. ioVFndrInfo                 ds.l    8                ; offset: $5A (90)
  776. ioVTotalBytes             ds        UnsignedWide    ; offset: $7A (122)        ;  total number of bytes on volume 
  777. ioVFreeBytes             ds        UnsignedWide    ; offset: $82 (130)        ;  number of free bytes on volume 
  778. sizeof                     EQU *                    ; size:   $8A (138)
  779.                         ENDR
  780. ; typedef struct XVolumeParam *            XVolumeParamPtr
  781.  
  782. AccessParam                RECORD 0
  783. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  784. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  785. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  786. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  787. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  788. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  789. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  790. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  791. filler3                     ds.w    1                ; offset: $18 (24)
  792. ioDenyModes                 ds.w    1                ; offset: $1A (26)        ; access rights data
  793. filler4                     ds.w    1                ; offset: $1C (28)
  794. filler5                     ds.b    1                ; offset: $1E (30)
  795. ioACUser                 ds.b    1                ; offset: $1F (31)        ; access rights for directory only
  796. filler6                     ds.l    1                ; offset: $20 (32)
  797. ioACOwnerID                 ds.l    1                ; offset: $24 (36)        ; owner ID
  798. ioACGroupID                 ds.l    1                ; offset: $28 (40)        ; group ID
  799. ioACAccess                 ds.l    1                ; offset: $2C (44)        ; access rights
  800. ioDirID                     ds.l    1                ; offset: $30 (48)
  801. sizeof                     EQU *                    ; size:   $34 (52)
  802.                         ENDR
  803. ; typedef struct AccessParam *            AccessParamPtr
  804.  
  805. ObjParam                RECORD 0
  806. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  807. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  808. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  809. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  810. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  811. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  812. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  813. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  814. filler7                     ds.w    1                ; offset: $18 (24)
  815. ioObjType                 ds.w    1                ; offset: $1A (26)        ; function code
  816. ioObjNamePtr             ds.l    1                ; offset: $1C (28)        ; ptr to returned creator/group name
  817. ioObjID                     ds.l    1                ; offset: $20 (32)        ; creator/group ID
  818. sizeof                     EQU *                    ; size:   $24 (36)
  819.                         ENDR
  820. ; typedef struct ObjParam *                ObjParamPtr
  821.  
  822. CopyParam                RECORD 0
  823. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  824. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  825. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  826. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  827. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  828. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  829. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  830. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  831. ioDstVRefNum             ds.w    1                ; offset: $18 (24)        ; destination vol identifier
  832. filler8                     ds.w    1                ; offset: $1A (26)
  833. ioNewName                 ds.l    1                ; offset: $1C (28)        ; ptr to destination pathname
  834. ioCopyName                 ds.l    1                ; offset: $20 (32)        ; ptr to optional name
  835. ioNewDirID                 ds.l    1                ; offset: $24 (36)        ; destination directory ID
  836. filler14                 ds.l    1                ; offset: $28 (40)
  837. filler15                 ds.l    1                ; offset: $2C (44)
  838. ioDirID                     ds.l    1                ; offset: $30 (48)
  839. sizeof                     EQU *                    ; size:   $34 (52)
  840.                         ENDR
  841. ; typedef struct CopyParam *            CopyParamPtr
  842.  
  843. WDParam                    RECORD 0
  844. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  845. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  846. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  847. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  848. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  849. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  850. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  851. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  852. filler9                     ds.w    1                ; offset: $18 (24)
  853. ioWDIndex                 ds.w    1                ; offset: $1A (26)
  854. ioWDProcID                 ds.l    1                ; offset: $1C (28)
  855. ioWDVRefNum                 ds.w    1                ; offset: $20 (32)
  856. filler10                 ds.w    1                ; offset: $22 (34)
  857. filler11                 ds.l    1                ; offset: $24 (36)
  858. filler12                 ds.l    1                ; offset: $28 (40)
  859. filler13                 ds.l    1                ; offset: $2C (44)
  860. ioWDDirID                 ds.l    1                ; offset: $30 (48)
  861. sizeof                     EQU *                    ; size:   $34 (52)
  862.                         ENDR
  863. ; typedef struct WDParam *                WDParamPtr
  864.  
  865. FIDParam                RECORD 0
  866. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  867. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  868. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  869. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  870. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  871. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  872. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  873. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  874. filler14                 ds.l    1                ; offset: $18 (24)
  875. ioDestNamePtr             ds.l    1                ; offset: $1C (28)        ;  dest file name 
  876. filler15                 ds.l    1                ; offset: $20 (32)
  877. ioDestDirID                 ds.l    1                ; offset: $24 (36)        ;  dest file's directory id 
  878. filler16                 ds.l    1                ; offset: $28 (40)
  879. filler17                 ds.l    1                ; offset: $2C (44)
  880. ioSrcDirID                 ds.l    1                ; offset: $30 (48)        ;  source file's directory id 
  881. filler18                 ds.w    1                ; offset: $34 (52)
  882. ioFileID                 ds.l    1                ; offset: $36 (54)        ;  file ID 
  883. sizeof                     EQU *                    ; size:   $3A (58)
  884.                         ENDR
  885. ; typedef struct FIDParam *                FIDParamPtr
  886.  
  887. ForeignPrivParam        RECORD 0
  888. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  889. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  890. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  891. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  892. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  893. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  894. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  895. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  896. ioFiller21                 ds.l    1                ; offset: $18 (24)
  897. ioFiller22                 ds.l    1                ; offset: $1C (28)
  898. ioForeignPrivBuffer         ds.l    1                ; offset: $20 (32)
  899. ioForeignPrivActCount     ds.l    1                ; offset: $24 (36)
  900. ioForeignPrivReqCount     ds.l    1                ; offset: $28 (40)
  901. ioFiller23                 ds.l    1                ; offset: $2C (44)
  902. ioForeignPrivDirID         ds.l    1                ; offset: $30 (48)
  903. ioForeignPrivInfo1         ds.l    1                ; offset: $34 (52)
  904. ioForeignPrivInfo2         ds.l    1                ; offset: $38 (56)
  905. ioForeignPrivInfo3         ds.l    1                ; offset: $3C (60)
  906. ioForeignPrivInfo4         ds.l    1                ; offset: $40 (64)
  907. sizeof                     EQU *                    ; size:   $44 (68)
  908.                         ENDR
  909. ; typedef struct ForeignPrivParam *        ForeignPrivParamPtr
  910.  
  911. CSParam                    RECORD 0
  912. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  913. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  914. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  915. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  916. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  917. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  918. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  919. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  920. ioMatchPtr                 ds.l    1                ; offset: $18 (24)        ;  match array 
  921. ioReqMatchCount             ds.l    1                ; offset: $1C (28)        ;  maximum allowable matches 
  922. ioActMatchCount             ds.l    1                ; offset: $20 (32)        ;  actual match count 
  923. ioSearchBits             ds.l    1                ; offset: $24 (36)        ;  search criteria selector 
  924. ioSearchInfo1             ds.l    1                ; offset: $28 (40)        ;  search values and range lower bounds 
  925. ioSearchInfo2             ds.l    1                ; offset: $2C (44)        ;  search values and range upper bounds 
  926. ioSearchTime             ds.l    1                ; offset: $30 (48)        ;  length of time to run search 
  927. ioCatPosition             ds        CatPositionRec ; offset: $34 (52)        ;  current position in the catalog 
  928. ioOptBuffer                 ds.l    1                ; offset: $44 (68)        ;  optional performance enhancement buffer 
  929. ioOptBufSize             ds.l    1                ; offset: $48 (72)        ;  size of buffer pointed to by ioOptBuffer 
  930. sizeof                     EQU *                    ; size:   $4C (76)
  931.                         ENDR
  932. ; typedef struct CSParam *                CSParamPtr
  933.  
  934. HParamBlockRec            RECORD 0
  935. qLink                     ds.l    1                ; offset: $0 (0)        ; queue link in header
  936. qType                     ds.w    1                ; offset: $4 (4)        ; type byte for safety check
  937. ioTrap                     ds.w    1                ; offset: $6 (6)        ; FS: the Trap
  938. ioCmdAddr                 ds.l    1                ; offset: $8 (8)        ; FS: address to dispatch to
  939. ioCompletion             ds.l    1                ; offset: $C (12)        ; completion routine addr (0 for synch calls)
  940. ioResult                 ds.w    1                ; offset: $10 (16)        ; result code
  941. ioNamePtr                 ds.l    1                ; offset: $12 (18)        ; ptr to Vol:FileName string
  942. ioVRefNum                 ds.w    1                ; offset: $16 (22)        ; volume refnum (DrvNum for Eject and MountVol)
  943. ioRefNum                 ds.w    1                ; offset: $18 (24)
  944. ioVersNum                 ds.b    1                ; offset: $1A (26)
  945. ioPermssn                 ds.b    1                ; offset: $1B (27)
  946. ioMisc                     ds.l    1                ; offset: $1C (28)
  947. ioBuffer                 ds.l    1                ; offset: $20 (32)
  948. ioReqCount                 ds.l    1                ; offset: $24 (36)
  949. ioActCount                 ds.l    1                ; offset: $28 (40)
  950. ioPosMode                 ds.w    1                ; offset: $2C (44)
  951. ioPosOffset                 ds.l    1                ; offset: $2E (46)
  952.                          ORG 24
  953. ioFRefNum                 ds.w    1                ; offset: $18 (24)
  954. ioFVersNum                 ds.b    1                ; offset: $1A (26)
  955. filler1                     ds.b    1                ; offset: $1B (27)
  956. ioFDirIndex                 ds.w    1                ; offset: $1C (28)
  957. ioFlAttrib                 ds.b    1                ; offset: $1E (30)
  958. ioFlVersNum                 ds.b    1                ; offset: $1F (31)
  959. ioFlFndrInfo             ds        FInfo            ; offset: $20 (32)
  960. ioDirID                     ds.l    1                ; offset: $30 (48)
  961. ioFlStBlk                 ds.w    1                ; offset: $34 (52)
  962. ioFlLgLen                 ds.l    1                ; offset: $36 (54)
  963. ioFlPyLen                 ds.l    1                ; offset: $3A (58)
  964. ioFlRStBlk                 ds.w    1                ; offset: $3E (62)
  965. ioFlRLgLen                 ds.l    1                ; offset: $40 (64)
  966. ioFlRPyLen                 ds.l    1                ; offset: $44 (68)
  967. ioFlCrDat                 ds.l    1                ; offset: $48 (72)
  968. ioFlMdDat                 ds.l    1                ; offset: $4C (76)
  969.                          ORG 24
  970. filler2                     ds.l    1                ; offset: $18 (24)
  971. ioVolIndex                 ds.w    1                ; offset: $1C (28)
  972. ioVCrDate                 ds.l    1                ; offset: $1E (30)
  973. ioVLsMod                 ds.l    1                ; offset: $22 (34)
  974. ioVAtrb                     ds.w    1                ; offset: $26 (38)
  975. ioVNmFls                 ds.w    1                ; offset: $28 (40)
  976. ioVBitMap                 ds.w    1                ; offset: $2A (42)
  977. ioAllocPtr                 ds.w    1                ; offset: $2C (44)
  978. ioVNmAlBlks                 ds.w    1                ; offset: $2E (46)
  979. ioVAlBlkSiz                 ds.l    1                ; offset: $30 (48)
  980. ioVClpSiz                 ds.l    1                ; offset: $34 (52)
  981. ioAlBlSt                 ds.w    1                ; offset: $38 (56)
  982. ioVNxtCNID                 ds.l    1                ; offset: $3A (58)
  983. ioVFrBlk                 ds.w    1                ; offset: $3E (62)
  984. ioVSigWord                 ds.w    1                ; offset: $40 (64)
  985. ioVDrvInfo                 ds.w    1                ; offset: $42 (66)
  986. ioVDRefNum                 ds.w    1                ; offset: $44 (68)
  987. ioVFSID                     ds.w    1                ; offset: $46 (70)
  988. ioVBkUp                     ds.l    1                ; offset: $48 (72)
  989. ioVSeqNum                 ds.w    1                ; offset: $4C (76)
  990. ioVWrCnt                 ds.l    1                ; offset: $4E (78)
  991. ioVFilCnt                 ds.l    1                ; offset: $52 (82)
  992. ioVDirCnt                 ds.l    1                ; offset: $56 (86)
  993. ioVFndrInfo                 ds.l    8                ; offset: $5A (90)
  994.                          ORG 24
  995. filler3                     ds.w    1                ; offset: $18 (24)
  996. ioDenyModes                 ds.w    1                ; offset: $1A (26)        ; access rights data
  997. filler4                     ds.w    1                ; offset: $1C (28)
  998. filler5                     ds.b    1                ; offset: $1E (30)
  999. ioACUser                 ds.b    1                ; offset: $1F (31)        ; access rights for directory only
  1000. filler6                     ds.l    1                ; offset: $20 (32)
  1001. ioACOwnerID                 ds.l    1                ; offset: $24 (36)        ; owner ID
  1002. ioACGroupID                 ds.l    1                ; offset: $28 (40)        ; group ID
  1003. ioACAccess                 ds.l    1                ; offset: $2C (44)        ; access rights
  1004.                          ORG 24
  1005. filler7                     ds.w    1                ; offset: $18 (24)
  1006. ioObjType                 ds.w    1                ; offset: $1A (26)        ; function code
  1007. ioObjNamePtr             ds.l    1                ; offset: $1C (28)        ; ptr to returned creator/group name
  1008. ioObjID                     ds.l    1                ; offset: $20 (32)        ; creator/group ID
  1009.                          ORG 24
  1010. ioDstVRefNum             ds.w    1                ; offset: $18 (24)        ; destination vol identifier
  1011. filler8                     ds.w    1                ; offset: $1A (26)
  1012. ioNewName                 ds.l    1                ; offset: $1C (28)        ; ptr to destination pathname
  1013. ioCopyName                 ds.l    1                ; offset: $20 (32)        ; ptr to optional name
  1014. ioNewDirID                 ds.l    1                ; offset: $24 (36)        ; destination directory ID
  1015.                          ORG 24
  1016. filler9                     ds.w    1                ; offset: $18 (24)
  1017. ioWDIndex                 ds.w    1                ; offset: $1A (26)
  1018. ioWDProcID                 ds.l    1                ; offset: $1C (28)
  1019. ioWDVRefNum                 ds.w    1                ; offset: $20 (32)
  1020. filler10                 ds.w    1                ; offset: $22 (34)
  1021. filler11                 ds.l    1                ; offset: $24 (36)
  1022. filler12                 ds.l    1                ; offset: $28 (40)
  1023. filler13                 ds.l    1                ; offset: $2C (44)
  1024. ioWDDirID                 ds.l    1                ; offset: $30 (48)
  1025.                          ORG 24
  1026. filler14                 ds.l    1                ; offset: $18 (24)
  1027. ioDestNamePtr             ds.l    1                ; offset: $1C (28)        ;  dest file name 
  1028. filler15                 ds.l    1                ; offset: $20 (32)
  1029. ioDestDirID                 ds.l    1                ; offset: $24 (36)        ;  dest file's directory id 
  1030. filler16                 ds.l    1                ; offset: $28 (40)
  1031. filler17                 ds.l    1                ; offset: $2C (44)
  1032. ioSrcDirID                 ds.l    1                ; offset: $30 (48)        ;  source file's directory id 
  1033. filler18                 ds.w    1                ; offset: $34 (52)
  1034. ioFileID                 ds.l    1                ; offset: $36 (54)        ;  file ID 
  1035.                          ORG 24
  1036. ioMatchPtr                 ds.l    1                ; offset: $18 (24)        ;  match array 
  1037. ioReqMatchCount             ds.l    1                ; offset: $1C (28)        ;  maximum allowable matches 
  1038. ioActMatchCount             ds.l    1                ; offset: $20 (32)        ;  actual match count 
  1039. ioSearchBits             ds.l    1                ; offset: $24 (36)        ;  search criteria selector 
  1040. ioSearchInfo1             ds.l    1                ; offset: $28 (40)        ;  search values and range lower bounds 
  1041. ioSearchInfo2             ds.l    1                ; offset: $2C (44)        ;  search values and range upper bounds 
  1042. ioSearchTime             ds.l    1                ; offset: $30 (48)        ;  length of time to run search 
  1043. ioCatPosition             ds        CatPositionRec ; offset: $34 (52)        ;  current position in the catalog 
  1044. ioOptBuffer                 ds.l    1                ; offset: $44 (68)        ;  optional performance enhancement buffer 
  1045. ioOptBufSize             ds.l    1                ; offset: $48 (72)        ;  size of buffer pointed to by ioOptBuffer 
  1046.                          ORG 24
  1047. ioFiller21                 ds.l    1                ; offset: $18 (24)
  1048. ioFiller22                 ds.l    1                ; offset: $1C (28)
  1049. ioForeignPrivBuffer         ds.l    1                ; offset: $20 (32)
  1050. ioForeignPrivActCount     ds.l    1                ; offset: $24 (36)
  1051. ioForeignPrivReqCount     ds.l    1                ; offset: $28 (40)
  1052. ioFiller23                 ds.l    1                ; offset: $2C (44)
  1053. ioForeignPrivDirID         ds.l    1                ; offset: $30 (48)
  1054. ioForeignPrivInfo1         ds.l    1                ; offset: $34 (52)
  1055. ioForeignPrivInfo2         ds.l    1                ; offset: $38 (56)
  1056. ioForeignPrivInfo3         ds.l    1                ; offset: $3C (60)
  1057. ioForeignPrivInfo4         ds.l    1                ; offset: $40 (64)
  1058.                          ORG 122
  1059. sizeof                     EQU *                    ; size:   $7A (122)
  1060.                         ENDR
  1061. ; typedef struct HParamBlockRec *        HParmBlkPtr
  1062.  
  1063.  
  1064. CMovePBRec                RECORD 0
  1065. qLink                     ds.l    1                ; offset: $0 (0)
  1066. qType                     ds.w    1                ; offset: $4 (4)
  1067. ioTrap                     ds.w    1                ; offset: $6 (6)
  1068. ioCmdAddr                 ds.l    1                ; offset: $8 (8)
  1069. ioCompletion             ds.l    1                ; offset: $C (12)
  1070. ioResult                 ds.w    1                ; offset: $10 (16)
  1071. ioNamePtr                 ds.l    1                ; offset: $12 (18)
  1072. ioVRefNum                 ds.w    1                ; offset: $16 (22)
  1073. filler1                     ds.l    1                ; offset: $18 (24)
  1074. ioNewName                 ds.l    1                ; offset: $1C (28)
  1075. filler2                     ds.l    1                ; offset: $20 (32)
  1076. ioNewDirID                 ds.l    1                ; offset: $24 (36)
  1077. filler3                     ds.l    2                ; offset: $28 (40)
  1078. ioDirID                     ds.l    1                ; offset: $30 (48)
  1079. sizeof                     EQU *                    ; size:   $34 (52)
  1080.                         ENDR
  1081. ; typedef struct CMovePBRec *            CMovePBPtr
  1082.  
  1083. WDPBRec                    RECORD 0
  1084. qLink                     ds.l    1                ; offset: $0 (0)
  1085. qType                     ds.w    1                ; offset: $4 (4)
  1086. ioTrap                     ds.w    1                ; offset: $6 (6)
  1087. ioCmdAddr                 ds.l    1                ; offset: $8 (8)
  1088. ioCompletion             ds.l    1                ; offset: $C (12)
  1089. ioResult                 ds.w    1                ; offset: $10 (16)
  1090. ioNamePtr                 ds.l    1                ; offset: $12 (18)
  1091. ioVRefNum                 ds.w    1                ; offset: $16 (22)
  1092. filler1                     ds.w    1                ; offset: $18 (24)
  1093. ioWDIndex                 ds.w    1                ; offset: $1A (26)
  1094. ioWDProcID                 ds.l    1                ; offset: $1C (28)
  1095. ioWDVRefNum                 ds.w    1                ; offset: $20 (32)
  1096. filler2                     ds.w    7                ; offset: $22 (34)
  1097. ioWDDirID                 ds.l    1                ; offset: $30 (48)
  1098. sizeof                     EQU *                    ; size:   $34 (52)
  1099.                         ENDR
  1100. ; typedef struct WDPBRec *                WDPBPtr
  1101.  
  1102. FCBPBRec                RECORD 0
  1103. qLink                     ds.l    1                ; offset: $0 (0)
  1104. qType                     ds.w    1                ; offset: $4 (4)
  1105. ioTrap                     ds.w    1                ; offset: $6 (6)
  1106. ioCmdAddr                 ds.l    1                ; offset: $8 (8)
  1107. ioCompletion             ds.l    1                ; offset: $C (12)
  1108. ioResult                 ds.w    1                ; offset: $10 (16)
  1109. ioNamePtr                 ds.l    1                ; offset: $12 (18)
  1110. ioVRefNum                 ds.w    1                ; offset: $16 (22)
  1111. ioRefNum                 ds.w    1                ; offset: $18 (24)
  1112. filler                     ds.w    1                ; offset: $1A (26)
  1113. ioFCBIndx                 ds.w    1                ; offset: $1C (28)
  1114. filler1                     ds.w    1                ; offset: $1E (30)
  1115. ioFCBFlNm                 ds.l    1                ; offset: $20 (32)
  1116. ioFCBFlags                 ds.w    1                ; offset: $24 (36)
  1117. ioFCBStBlk                 ds.w    1                ; offset: $26 (38)
  1118. ioFCBEOF                 ds.l    1                ; offset: $28 (40)
  1119. ioFCBPLen                 ds.l    1                ; offset: $2C (44)
  1120. ioFCBCrPs                 ds.l    1                ; offset: $30 (48)
  1121. ioFCBVRefNum             ds.w    1                ; offset: $34 (52)
  1122. ioFCBClpSiz                 ds.l    1                ; offset: $36 (54)
  1123. ioFCBParID                 ds.l    1                ; offset: $3A (58)
  1124. sizeof                     EQU *                    ; size:   $3E (62)
  1125.                         ENDR
  1126. ; typedef struct FCBPBRec *                FCBPBPtr
  1127.  
  1128. VCB                        RECORD 0
  1129. qLink                     ds.l    1                ; offset: $0 (0)
  1130. qType                     ds.w    1                ; offset: $4 (4)
  1131. vcbFlags                 ds.w    1                ; offset: $6 (6)
  1132. vcbSigWord                 ds.w    1                ; offset: $8 (8)
  1133. vcbCrDate                 ds.l    1                ; offset: $A (10)
  1134. vcbLsMod                 ds.l    1                ; offset: $E (14)
  1135. vcbAtrb                     ds.w    1                ; offset: $12 (18)
  1136. vcbNmFls                 ds.w    1                ; offset: $14 (20)
  1137. vcbVBMSt                 ds.w    1                ; offset: $16 (22)
  1138. vcbAllocPtr                 ds.w    1                ; offset: $18 (24)
  1139. vcbNmAlBlks                 ds.w    1                ; offset: $1A (26)
  1140. vcbAlBlkSiz                 ds.l    1                ; offset: $1C (28)
  1141. vcbClpSiz                 ds.l    1                ; offset: $20 (32)
  1142. vcbAlBlSt                 ds.w    1                ; offset: $24 (36)
  1143. vcbNxtCNID                 ds.l    1                ; offset: $26 (38)
  1144. vcbFreeBks                 ds.w    1                ; offset: $2A (42)
  1145. vcbVN                     ds        Str27            ; offset: $2C (44)
  1146. vcbDrvNum                 ds.w    1                ; offset: $48 (72)
  1147. vcbDRefNum                 ds.w    1                ; offset: $4A (74)
  1148. vcbFSID                     ds.w    1                ; offset: $4C (76)
  1149. vcbVRefNum                 ds.w    1                ; offset: $4E (78)
  1150. vcbMAdr                     ds.l    1                ; offset: $50 (80)
  1151. vcbBufAdr                 ds.l    1                ; offset: $54 (84)
  1152. vcbMLen                     ds.w    1                ; offset: $58 (88)
  1153. vcbDirIndex                 ds.w    1                ; offset: $5A (90)
  1154. vcbDirBlk                 ds.w    1                ; offset: $5C (92)
  1155. vcbVolBkUp                 ds.l    1                ; offset: $5E (94)
  1156. vcbVSeqNum                 ds.w    1                ; offset: $62 (98)
  1157. vcbWrCnt                 ds.l    1                ; offset: $64 (100)
  1158. vcbXTClpSiz                 ds.l    1                ; offset: $68 (104)
  1159. vcbCTClpSiz                 ds.l    1                ; offset: $6C (108)
  1160. vcbNmRtDirs                 ds.w    1                ; offset: $70 (112)
  1161. vcbFilCnt                 ds.l    1                ; offset: $72 (114)
  1162. vcbDirCnt                 ds.l    1                ; offset: $76 (118)
  1163. vcbFndrInfo                 ds.l    8                ; offset: $7A (122)
  1164. vcbVCSize                 ds.w    1                ; offset: $9A (154)
  1165. vcbVBMCSiz                 ds.w    1                ; offset: $9C (156)
  1166. vcbCtlCSiz                 ds.w    1                ; offset: $9E (158)
  1167. vcbXTAlBlks                 ds.w    1                ; offset: $A0 (160)
  1168. vcbCTAlBlks                 ds.w    1                ; offset: $A2 (162)
  1169. vcbXTRef                 ds.w    1                ; offset: $A4 (164)
  1170. vcbCTRef                 ds.w    1                ; offset: $A6 (166)
  1171. vcbCtlBuf                 ds.l    1                ; offset: $A8 (168)
  1172. vcbDirIDM                 ds.l    1                ; offset: $AC (172)
  1173. vcbOffsM                 ds.w    1                ; offset: $B0 (176)
  1174. sizeof                     EQU *                    ; size:   $B2 (178)
  1175.                         ENDR
  1176. ; typedef struct VCB *                    VCBPtr
  1177.  
  1178. DrvQEl                    RECORD 0
  1179. qLink                     ds.l    1                ; offset: $0 (0)
  1180. qType                     ds.w    1                ; offset: $4 (4)
  1181. dQDrive                     ds.w    1                ; offset: $6 (6)
  1182. dQRefNum                 ds.w    1                ; offset: $8 (8)
  1183. dQFSID                     ds.w    1                ; offset: $A (10)
  1184. dQDrvSz                     ds.w    1                ; offset: $C (12)
  1185. dQDrvSz2                 ds.w    1                ; offset: $E (14)
  1186. sizeof                     EQU *                    ; size:   $10 (16)
  1187.                         ENDR
  1188. ; typedef struct DrvQEl *                DrvQElPtr
  1189.  
  1190.     IF OLDROUTINELOCATIONS THEN
  1191. ;
  1192. ; pascal OSErr PBOpenSync(ParmBlkPtr paramBlock)
  1193. ;
  1194.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1195.         ; parameters:
  1196.         ;    paramBlock      => A0
  1197.         ; returns:
  1198.         ;    OSErr           <= D0
  1199.         _PBOpenSync:    OPWORD    $A000
  1200.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1201.         IMPORT_CFM_FUNCTION PBOpenSync
  1202.     ENDIF
  1203.  
  1204. ;
  1205. ; pascal OSErr PBOpenAsync(ParmBlkPtr paramBlock)
  1206. ;
  1207.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1208.         ; parameters:
  1209.         ;    paramBlock      => A0
  1210.         ; returns:
  1211.         ;    OSErr           <= D0
  1212.         _PBOpenAsync:    OPWORD    $A400
  1213.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1214.         IMPORT_CFM_FUNCTION PBOpenAsync
  1215.     ENDIF
  1216.  
  1217. ;
  1218. ; pascal OSErr PBOpenImmed(ParmBlkPtr paramBlock)
  1219. ;
  1220.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1221.         ; parameters:
  1222.         ;    paramBlock      => A0
  1223.         ; returns:
  1224.         ;    OSErr           <= D0
  1225.         _PBOpenImmed:    OPWORD    $A200
  1226.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1227.         IMPORT_CFM_FUNCTION PBOpenImmed
  1228.     ENDIF
  1229.  
  1230. ;
  1231. ; pascal OSErr PBCloseSync(ParmBlkPtr paramBlock)
  1232. ;
  1233.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1234.         ; parameters:
  1235.         ;    paramBlock      => A0
  1236.         ; returns:
  1237.         ;    OSErr           <= D0
  1238.         _PBCloseSync:    OPWORD    $A001
  1239.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1240.         IMPORT_CFM_FUNCTION PBCloseSync
  1241.     ENDIF
  1242.  
  1243. ;
  1244. ; pascal OSErr PBCloseAsync(ParmBlkPtr paramBlock)
  1245. ;
  1246.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1247.         ; parameters:
  1248.         ;    paramBlock      => A0
  1249.         ; returns:
  1250.         ;    OSErr           <= D0
  1251.         _PBCloseAsync:    OPWORD    $A401
  1252.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1253.         IMPORT_CFM_FUNCTION PBCloseAsync
  1254.     ENDIF
  1255.  
  1256. ;
  1257. ; pascal OSErr PBCloseImmed(ParmBlkPtr paramBlock)
  1258. ;
  1259.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1260.         ; parameters:
  1261.         ;    paramBlock      => A0
  1262.         ; returns:
  1263.         ;    OSErr           <= D0
  1264.         _PBCloseImmed:    OPWORD    $A201
  1265.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1266.         IMPORT_CFM_FUNCTION PBCloseImmed
  1267.     ENDIF
  1268.  
  1269. ;
  1270. ; pascal OSErr PBReadSync(ParmBlkPtr paramBlock)
  1271. ;
  1272.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1273.         ; parameters:
  1274.         ;    paramBlock      => A0
  1275.         ; returns:
  1276.         ;    OSErr           <= D0
  1277.         _PBReadSync:    OPWORD    $A002
  1278.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1279.         IMPORT_CFM_FUNCTION PBReadSync
  1280.     ENDIF
  1281.  
  1282. ;
  1283. ; pascal OSErr PBReadAsync(ParmBlkPtr paramBlock)
  1284. ;
  1285.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1286.         ; parameters:
  1287.         ;    paramBlock      => A0
  1288.         ; returns:
  1289.         ;    OSErr           <= D0
  1290.         _PBReadAsync:    OPWORD    $A402
  1291.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1292.         IMPORT_CFM_FUNCTION PBReadAsync
  1293.     ENDIF
  1294.  
  1295. ;
  1296. ; pascal OSErr PBReadImmed(ParmBlkPtr paramBlock)
  1297. ;
  1298.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1299.         ; parameters:
  1300.         ;    paramBlock      => A0
  1301.         ; returns:
  1302.         ;    OSErr           <= D0
  1303.         _PBReadImmed:    OPWORD    $A202
  1304.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1305.         IMPORT_CFM_FUNCTION PBReadImmed
  1306.     ENDIF
  1307.  
  1308. ;
  1309. ; pascal OSErr PBWriteSync(ParmBlkPtr paramBlock)
  1310. ;
  1311.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1312.         ; parameters:
  1313.         ;    paramBlock      => A0
  1314.         ; returns:
  1315.         ;    OSErr           <= D0
  1316.         _PBWriteSync:    OPWORD    $A003
  1317.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1318.         IMPORT_CFM_FUNCTION PBWriteSync
  1319.     ENDIF
  1320.  
  1321. ;
  1322. ; pascal OSErr PBWriteAsync(ParmBlkPtr paramBlock)
  1323. ;
  1324.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1325.         ; parameters:
  1326.         ;    paramBlock      => A0
  1327.         ; returns:
  1328.         ;    OSErr           <= D0
  1329.         _PBWriteAsync:    OPWORD    $A403
  1330.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1331.         IMPORT_CFM_FUNCTION PBWriteAsync
  1332.     ENDIF
  1333.  
  1334. ;
  1335. ; pascal OSErr PBWriteImmed(ParmBlkPtr paramBlock)
  1336. ;
  1337.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1338.         ; parameters:
  1339.         ;    paramBlock      => A0
  1340.         ; returns:
  1341.         ;    OSErr           <= D0
  1342.         _PBWriteImmed:    OPWORD    $A203
  1343.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1344.         IMPORT_CFM_FUNCTION PBWriteImmed
  1345.     ENDIF
  1346.  
  1347.     ENDIF    ; OLDROUTINELOCATIONS
  1348. ;
  1349. ; pascal OSErr PBGetVInfoSync(ParmBlkPtr paramBlock)
  1350. ;
  1351.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1352.         ; parameters:
  1353.         ;    paramBlock      => A0
  1354.         ; returns:
  1355.         ;    OSErr           <= D0
  1356.         _PBGetVInfoSync:    OPWORD    $A007
  1357.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1358.         IMPORT_CFM_FUNCTION PBGetVInfoSync
  1359.     ENDIF
  1360.  
  1361. ;
  1362. ; pascal OSErr PBGetVInfoAsync(ParmBlkPtr paramBlock)
  1363. ;
  1364.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1365.         ; parameters:
  1366.         ;    paramBlock      => A0
  1367.         ; returns:
  1368.         ;    OSErr           <= D0
  1369.         _PBGetVInfoAsync:    OPWORD    $A407
  1370.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1371.         IMPORT_CFM_FUNCTION PBGetVInfoAsync
  1372.     ENDIF
  1373.  
  1374. ;
  1375. ; pascal OSErr PBXGetVolInfoSync(XVolumeParamPtr paramBlock)
  1376. ;
  1377.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1378.         ; parameters:
  1379.         ;    paramBlock      => A0
  1380.         ; returns:
  1381.         ;    OSErr           <= D0
  1382.         Macro
  1383.         _PBXGetVolInfoSync
  1384.             moveq               #18,D0
  1385.             dc.w                $A060
  1386.         EndM
  1387.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1388.         IMPORT_CFM_FUNCTION PBXGetVolInfoSync
  1389.     ENDIF
  1390.  
  1391. ;
  1392. ; pascal OSErr PBXGetVolInfoAsync(XVolumeParamPtr paramBlock)
  1393. ;
  1394.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1395.         ; parameters:
  1396.         ;    paramBlock      => A0
  1397.         ; returns:
  1398.         ;    OSErr           <= D0
  1399.         Macro
  1400.         _PBXGetVolInfoAsync
  1401.             moveq               #18,D0
  1402.             dc.w                $A460
  1403.         EndM
  1404.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1405.         IMPORT_CFM_FUNCTION PBXGetVolInfoAsync
  1406.     ENDIF
  1407.  
  1408. ;
  1409. ; pascal OSErr PBGetVolSync(ParmBlkPtr paramBlock)
  1410. ;
  1411.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1412.         ; parameters:
  1413.         ;    paramBlock      => A0
  1414.         ; returns:
  1415.         ;    OSErr           <= D0
  1416.         _PBGetVolSync:    OPWORD    $A014
  1417.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1418.         IMPORT_CFM_FUNCTION PBGetVolSync
  1419.     ENDIF
  1420.  
  1421. ;
  1422. ; pascal OSErr PBGetVolAsync(ParmBlkPtr paramBlock)
  1423. ;
  1424.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1425.         ; parameters:
  1426.         ;    paramBlock      => A0
  1427.         ; returns:
  1428.         ;    OSErr           <= D0
  1429.         _PBGetVolAsync:    OPWORD    $A414
  1430.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1431.         IMPORT_CFM_FUNCTION PBGetVolAsync
  1432.     ENDIF
  1433.  
  1434. ;
  1435. ; pascal OSErr PBSetVolSync(ParmBlkPtr paramBlock)
  1436. ;
  1437.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1438.         ; parameters:
  1439.         ;    paramBlock      => A0
  1440.         ; returns:
  1441.         ;    OSErr           <= D0
  1442.         _PBSetVolSync:    OPWORD    $A015
  1443.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1444.         IMPORT_CFM_FUNCTION PBSetVolSync
  1445.     ENDIF
  1446.  
  1447. ;
  1448. ; pascal OSErr PBSetVolAsync(ParmBlkPtr paramBlock)
  1449. ;
  1450.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1451.         ; parameters:
  1452.         ;    paramBlock      => A0
  1453.         ; returns:
  1454.         ;    OSErr           <= D0
  1455.         _PBSetVolAsync:    OPWORD    $A415
  1456.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1457.         IMPORT_CFM_FUNCTION PBSetVolAsync
  1458.     ENDIF
  1459.  
  1460. ;
  1461. ; pascal OSErr PBFlushVolSync(ParmBlkPtr paramBlock)
  1462. ;
  1463.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1464.         ; parameters:
  1465.         ;    paramBlock      => A0
  1466.         ; returns:
  1467.         ;    OSErr           <= D0
  1468.         _PBFlushVolSync:    OPWORD    $A013
  1469.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1470.         IMPORT_CFM_FUNCTION PBFlushVolSync
  1471.     ENDIF
  1472.  
  1473. ;
  1474. ; pascal OSErr PBFlushVolAsync(ParmBlkPtr paramBlock)
  1475. ;
  1476.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1477.         ; parameters:
  1478.         ;    paramBlock      => A0
  1479.         ; returns:
  1480.         ;    OSErr           <= D0
  1481.         _PBFlushVolAsync:    OPWORD    $A413
  1482.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1483.         IMPORT_CFM_FUNCTION PBFlushVolAsync
  1484.     ENDIF
  1485.  
  1486. ;
  1487. ; pascal OSErr PBCreateSync(ParmBlkPtr paramBlock)
  1488. ;
  1489.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1490.         ; parameters:
  1491.         ;    paramBlock      => A0
  1492.         ; returns:
  1493.         ;    OSErr           <= D0
  1494.         _PBCreateSync:    OPWORD    $A008
  1495.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1496.         IMPORT_CFM_FUNCTION PBCreateSync
  1497.     ENDIF
  1498.  
  1499. ;
  1500. ; pascal OSErr PBCreateAsync(ParmBlkPtr paramBlock)
  1501. ;
  1502.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1503.         ; parameters:
  1504.         ;    paramBlock      => A0
  1505.         ; returns:
  1506.         ;    OSErr           <= D0
  1507.         _PBCreateAsync:    OPWORD    $A408
  1508.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1509.         IMPORT_CFM_FUNCTION PBCreateAsync
  1510.     ENDIF
  1511.  
  1512. ;
  1513. ; pascal OSErr PBDeleteSync(ParmBlkPtr paramBlock)
  1514. ;
  1515.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1516.         ; parameters:
  1517.         ;    paramBlock      => A0
  1518.         ; returns:
  1519.         ;    OSErr           <= D0
  1520.         _PBDeleteSync:    OPWORD    $A009
  1521.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1522.         IMPORT_CFM_FUNCTION PBDeleteSync
  1523.     ENDIF
  1524.  
  1525. ;
  1526. ; pascal OSErr PBDeleteAsync(ParmBlkPtr paramBlock)
  1527. ;
  1528.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1529.         ; parameters:
  1530.         ;    paramBlock      => A0
  1531.         ; returns:
  1532.         ;    OSErr           <= D0
  1533.         _PBDeleteAsync:    OPWORD    $A409
  1534.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1535.         IMPORT_CFM_FUNCTION PBDeleteAsync
  1536.     ENDIF
  1537.  
  1538. ;
  1539. ; pascal OSErr PBOpenDFSync(ParmBlkPtr paramBlock)
  1540. ;
  1541.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1542.         ; parameters:
  1543.         ;    paramBlock      => A0
  1544.         ; returns:
  1545.         ;    OSErr           <= D0
  1546.         Macro
  1547.         _PBOpenDFSync
  1548.             moveq               #26,D0
  1549.             dc.w                $A060
  1550.         EndM
  1551.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1552.         IMPORT_CFM_FUNCTION PBOpenDFSync
  1553.     ENDIF
  1554.  
  1555. ;
  1556. ; pascal OSErr PBOpenDFAsync(ParmBlkPtr paramBlock)
  1557. ;
  1558.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1559.         ; parameters:
  1560.         ;    paramBlock      => A0
  1561.         ; returns:
  1562.         ;    OSErr           <= D0
  1563.         Macro
  1564.         _PBOpenDFAsync
  1565.             moveq               #26,D0
  1566.             dc.w                $A460
  1567.         EndM
  1568.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1569.         IMPORT_CFM_FUNCTION PBOpenDFAsync
  1570.     ENDIF
  1571.  
  1572. ;
  1573. ; pascal OSErr PBOpenRFSync(ParmBlkPtr paramBlock)
  1574. ;
  1575.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1576.         ; parameters:
  1577.         ;    paramBlock      => A0
  1578.         ; returns:
  1579.         ;    OSErr           <= D0
  1580.         _PBOpenRFSync:    OPWORD    $A00A
  1581.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1582.         IMPORT_CFM_FUNCTION PBOpenRFSync
  1583.     ENDIF
  1584.  
  1585. ;
  1586. ; pascal OSErr PBOpenRFAsync(ParmBlkPtr paramBlock)
  1587. ;
  1588.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1589.         ; parameters:
  1590.         ;    paramBlock      => A0
  1591.         ; returns:
  1592.         ;    OSErr           <= D0
  1593.         _PBOpenRFAsync:    OPWORD    $A40A
  1594.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1595.         IMPORT_CFM_FUNCTION PBOpenRFAsync
  1596.     ENDIF
  1597.  
  1598. ;
  1599. ; pascal OSErr PBRenameSync(ParmBlkPtr paramBlock)
  1600. ;
  1601.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1602.         ; parameters:
  1603.         ;    paramBlock      => A0
  1604.         ; returns:
  1605.         ;    OSErr           <= D0
  1606.         _PBRenameSync:    OPWORD    $A00B
  1607.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1608.         IMPORT_CFM_FUNCTION PBRenameSync
  1609.     ENDIF
  1610.  
  1611. ;
  1612. ; pascal OSErr PBRenameAsync(ParmBlkPtr paramBlock)
  1613. ;
  1614.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1615.         ; parameters:
  1616.         ;    paramBlock      => A0
  1617.         ; returns:
  1618.         ;    OSErr           <= D0
  1619.         _PBRenameAsync:    OPWORD    $A40B
  1620.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1621.         IMPORT_CFM_FUNCTION PBRenameAsync
  1622.     ENDIF
  1623.  
  1624. ;
  1625. ; pascal OSErr PBGetFInfoSync(ParmBlkPtr paramBlock)
  1626. ;
  1627.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1628.         ; parameters:
  1629.         ;    paramBlock      => A0
  1630.         ; returns:
  1631.         ;    OSErr           <= D0
  1632.         _PBGetFInfoSync:    OPWORD    $A00C
  1633.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1634.         IMPORT_CFM_FUNCTION PBGetFInfoSync
  1635.     ENDIF
  1636.  
  1637. ;
  1638. ; pascal OSErr PBGetFInfoAsync(ParmBlkPtr paramBlock)
  1639. ;
  1640.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1641.         ; parameters:
  1642.         ;    paramBlock      => A0
  1643.         ; returns:
  1644.         ;    OSErr           <= D0
  1645.         _PBGetFInfoAsync:    OPWORD    $A40C
  1646.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1647.         IMPORT_CFM_FUNCTION PBGetFInfoAsync
  1648.     ENDIF
  1649.  
  1650. ;
  1651. ; pascal OSErr PBSetFInfoSync(ParmBlkPtr paramBlock)
  1652. ;
  1653.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1654.         ; parameters:
  1655.         ;    paramBlock      => A0
  1656.         ; returns:
  1657.         ;    OSErr           <= D0
  1658.         _PBSetFInfoSync:    OPWORD    $A00D
  1659.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1660.         IMPORT_CFM_FUNCTION PBSetFInfoSync
  1661.     ENDIF
  1662.  
  1663. ;
  1664. ; pascal OSErr PBSetFInfoAsync(ParmBlkPtr paramBlock)
  1665. ;
  1666.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1667.         ; parameters:
  1668.         ;    paramBlock      => A0
  1669.         ; returns:
  1670.         ;    OSErr           <= D0
  1671.         _PBSetFInfoAsync:    OPWORD    $A40D
  1672.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1673.         IMPORT_CFM_FUNCTION PBSetFInfoAsync
  1674.     ENDIF
  1675.  
  1676. ;
  1677. ; pascal OSErr PBSetFLockSync(ParmBlkPtr paramBlock)
  1678. ;
  1679.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1680.         ; parameters:
  1681.         ;    paramBlock      => A0
  1682.         ; returns:
  1683.         ;    OSErr           <= D0
  1684.         _PBSetFLockSync:    OPWORD    $A041
  1685.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1686.         IMPORT_CFM_FUNCTION PBSetFLockSync
  1687.     ENDIF
  1688.  
  1689. ;
  1690. ; pascal OSErr PBSetFLockAsync(ParmBlkPtr paramBlock)
  1691. ;
  1692.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1693.         ; parameters:
  1694.         ;    paramBlock      => A0
  1695.         ; returns:
  1696.         ;    OSErr           <= D0
  1697.         _PBSetFLockAsync:    OPWORD    $A441
  1698.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1699.         IMPORT_CFM_FUNCTION PBSetFLockAsync
  1700.     ENDIF
  1701.  
  1702. ;
  1703. ; pascal OSErr PBRstFLockSync(ParmBlkPtr paramBlock)
  1704. ;
  1705.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1706.         ; parameters:
  1707.         ;    paramBlock      => A0
  1708.         ; returns:
  1709.         ;    OSErr           <= D0
  1710.         _PBRstFLockSync:    OPWORD    $A042
  1711.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1712.         IMPORT_CFM_FUNCTION PBRstFLockSync
  1713.     ENDIF
  1714.  
  1715. ;
  1716. ; pascal OSErr PBRstFLockAsync(ParmBlkPtr paramBlock)
  1717. ;
  1718.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1719.         ; parameters:
  1720.         ;    paramBlock      => A0
  1721.         ; returns:
  1722.         ;    OSErr           <= D0
  1723.         _PBRstFLockAsync:    OPWORD    $A442
  1724.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1725.         IMPORT_CFM_FUNCTION PBRstFLockAsync
  1726.     ENDIF
  1727.  
  1728. ;
  1729. ; pascal OSErr PBSetFVersSync(ParmBlkPtr paramBlock)
  1730. ;
  1731.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1732.         ; parameters:
  1733.         ;    paramBlock      => A0
  1734.         ; returns:
  1735.         ;    OSErr           <= D0
  1736.         _PBSetFVersSync:    OPWORD    $A043
  1737.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1738.         IMPORT_CFM_FUNCTION PBSetFVersSync
  1739.     ENDIF
  1740.  
  1741. ;
  1742. ; pascal OSErr PBSetFVersAsync(ParmBlkPtr paramBlock)
  1743. ;
  1744.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1745.         ; parameters:
  1746.         ;    paramBlock      => A0
  1747.         ; returns:
  1748.         ;    OSErr           <= D0
  1749.         _PBSetFVersAsync:    OPWORD    $A443
  1750.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1751.         IMPORT_CFM_FUNCTION PBSetFVersAsync
  1752.     ENDIF
  1753.  
  1754. ;
  1755. ; pascal OSErr PBAllocateSync(ParmBlkPtr paramBlock)
  1756. ;
  1757.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1758.         ; parameters:
  1759.         ;    paramBlock      => A0
  1760.         ; returns:
  1761.         ;    OSErr           <= D0
  1762.         _PBAllocateSync:    OPWORD    $A010
  1763.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1764.         IMPORT_CFM_FUNCTION PBAllocateSync
  1765.     ENDIF
  1766.  
  1767. ;
  1768. ; pascal OSErr PBAllocateAsync(ParmBlkPtr paramBlock)
  1769. ;
  1770.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1771.         ; parameters:
  1772.         ;    paramBlock      => A0
  1773.         ; returns:
  1774.         ;    OSErr           <= D0
  1775.         _PBAllocateAsync:    OPWORD    $A410
  1776.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1777.         IMPORT_CFM_FUNCTION PBAllocateAsync
  1778.     ENDIF
  1779.  
  1780. ;
  1781. ; pascal OSErr PBGetEOFSync(ParmBlkPtr paramBlock)
  1782. ;
  1783.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1784.         ; parameters:
  1785.         ;    paramBlock      => A0
  1786.         ; returns:
  1787.         ;    OSErr           <= D0
  1788.         _PBGetEOFSync:    OPWORD    $A011
  1789.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1790.         IMPORT_CFM_FUNCTION PBGetEOFSync
  1791.     ENDIF
  1792.  
  1793. ;
  1794. ; pascal OSErr PBGetEOFAsync(ParmBlkPtr paramBlock)
  1795. ;
  1796.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1797.         ; parameters:
  1798.         ;    paramBlock      => A0
  1799.         ; returns:
  1800.         ;    OSErr           <= D0
  1801.         _PBGetEOFAsync:    OPWORD    $A411
  1802.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1803.         IMPORT_CFM_FUNCTION PBGetEOFAsync
  1804.     ENDIF
  1805.  
  1806. ;
  1807. ; pascal OSErr PBSetEOFSync(ParmBlkPtr paramBlock)
  1808. ;
  1809.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1810.         ; parameters:
  1811.         ;    paramBlock      => A0
  1812.         ; returns:
  1813.         ;    OSErr           <= D0
  1814.         _PBSetEOFSync:    OPWORD    $A012
  1815.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1816.         IMPORT_CFM_FUNCTION PBSetEOFSync
  1817.     ENDIF
  1818.  
  1819. ;
  1820. ; pascal OSErr PBSetEOFAsync(ParmBlkPtr paramBlock)
  1821. ;
  1822.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1823.         ; parameters:
  1824.         ;    paramBlock      => A0
  1825.         ; returns:
  1826.         ;    OSErr           <= D0
  1827.         _PBSetEOFAsync:    OPWORD    $A412
  1828.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1829.         IMPORT_CFM_FUNCTION PBSetEOFAsync
  1830.     ENDIF
  1831.  
  1832. ;
  1833. ; pascal OSErr PBGetFPosSync(ParmBlkPtr paramBlock)
  1834. ;
  1835.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1836.         ; parameters:
  1837.         ;    paramBlock      => A0
  1838.         ; returns:
  1839.         ;    OSErr           <= D0
  1840.         _PBGetFPosSync:    OPWORD    $A018
  1841.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1842.         IMPORT_CFM_FUNCTION PBGetFPosSync
  1843.     ENDIF
  1844.  
  1845. ;
  1846. ; pascal OSErr PBGetFPosAsync(ParmBlkPtr paramBlock)
  1847. ;
  1848.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1849.         ; parameters:
  1850.         ;    paramBlock      => A0
  1851.         ; returns:
  1852.         ;    OSErr           <= D0
  1853.         _PBGetFPosAsync:    OPWORD    $A418
  1854.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1855.         IMPORT_CFM_FUNCTION PBGetFPosAsync
  1856.     ENDIF
  1857.  
  1858. ;
  1859. ; pascal OSErr PBSetFPosSync(ParmBlkPtr paramBlock)
  1860. ;
  1861.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1862.         ; parameters:
  1863.         ;    paramBlock      => A0
  1864.         ; returns:
  1865.         ;    OSErr           <= D0
  1866.         _PBSetFPosSync:    OPWORD    $A044
  1867.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1868.         IMPORT_CFM_FUNCTION PBSetFPosSync
  1869.     ENDIF
  1870.  
  1871. ;
  1872. ; pascal OSErr PBSetFPosAsync(ParmBlkPtr paramBlock)
  1873. ;
  1874.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1875.         ; parameters:
  1876.         ;    paramBlock      => A0
  1877.         ; returns:
  1878.         ;    OSErr           <= D0
  1879.         _PBSetFPosAsync:    OPWORD    $A444
  1880.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1881.         IMPORT_CFM_FUNCTION PBSetFPosAsync
  1882.     ENDIF
  1883.  
  1884. ;
  1885. ; pascal OSErr PBFlushFileSync(ParmBlkPtr paramBlock)
  1886. ;
  1887.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1888.         ; parameters:
  1889.         ;    paramBlock      => A0
  1890.         ; returns:
  1891.         ;    OSErr           <= D0
  1892.         _PBFlushFileSync:    OPWORD    $A045
  1893.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1894.         IMPORT_CFM_FUNCTION PBFlushFileSync
  1895.     ENDIF
  1896.  
  1897. ;
  1898. ; pascal OSErr PBFlushFileAsync(ParmBlkPtr paramBlock)
  1899. ;
  1900.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1901.         ; parameters:
  1902.         ;    paramBlock      => A0
  1903.         ; returns:
  1904.         ;    OSErr           <= D0
  1905.         _PBFlushFileAsync:    OPWORD    $A445
  1906.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1907.         IMPORT_CFM_FUNCTION PBFlushFileAsync
  1908.     ENDIF
  1909.  
  1910. ;
  1911. ; pascal OSErr PBMountVol(ParmBlkPtr paramBlock)
  1912. ;
  1913.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1914.         ; parameters:
  1915.         ;    paramBlock      => A0
  1916.         ; returns:
  1917.         ;    OSErr           <= D0
  1918.         _PBMountVol:    OPWORD    $A00F
  1919.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1920.         IMPORT_CFM_FUNCTION PBMountVol
  1921.     ENDIF
  1922.  
  1923. ;
  1924. ; pascal OSErr PBUnmountVol(ParmBlkPtr paramBlock)
  1925. ;
  1926.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1927.         ; parameters:
  1928.         ;    paramBlock      => A0
  1929.         ; returns:
  1930.         ;    OSErr           <= D0
  1931.         _PBUnmountVol:    OPWORD    $A00E
  1932.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1933.         IMPORT_CFM_FUNCTION PBUnmountVol
  1934.     ENDIF
  1935.  
  1936. ;
  1937. ; pascal OSErr PBUnmountVolImmed(ParmBlkPtr paramBlock)
  1938. ;
  1939.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1940.         ; parameters:
  1941.         ;    paramBlock      => A0
  1942.         ; returns:
  1943.         ;    OSErr           <= D0
  1944.         _PBUnmountVolImmed:    OPWORD    $A20E
  1945.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1946.         IMPORT_CFM_FUNCTION PBUnmountVolImmed
  1947.     ENDIF
  1948.  
  1949. ;
  1950. ; pascal OSErr PBEject(ParmBlkPtr paramBlock)
  1951. ;
  1952.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1953.         ; parameters:
  1954.         ;    paramBlock      => A0
  1955.         ; returns:
  1956.         ;    OSErr           <= D0
  1957.         _PBEject:    OPWORD    $A017
  1958.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1959.         IMPORT_CFM_FUNCTION PBEject
  1960.     ENDIF
  1961.  
  1962. ;
  1963. ; pascal OSErr PBOffLine(ParmBlkPtr paramBlock)
  1964. ;
  1965.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1966.         ; parameters:
  1967.         ;    paramBlock      => A0
  1968.         ; returns:
  1969.         ;    OSErr           <= D0
  1970.         _PBOffLine:    OPWORD    $A035
  1971.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1972.         IMPORT_CFM_FUNCTION PBOffLine
  1973.     ENDIF
  1974.  
  1975. ;
  1976. ; pascal OSErr PBCatSearchSync(CSParamPtr paramBlock)
  1977. ;
  1978.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1979.         ; parameters:
  1980.         ;    paramBlock      => A0
  1981.         ; returns:
  1982.         ;    OSErr           <= D0
  1983.         Macro
  1984.         _PBCatSearchSync
  1985.             moveq               #24,D0
  1986.             dc.w                $A260
  1987.         EndM
  1988.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1989.         IMPORT_CFM_FUNCTION PBCatSearchSync
  1990.     ENDIF
  1991.  
  1992. ;
  1993. ; pascal OSErr PBCatSearchAsync(CSParamPtr paramBlock)
  1994. ;
  1995.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1996.         ; parameters:
  1997.         ;    paramBlock      => A0
  1998.         ; returns:
  1999.         ;    OSErr           <= D0
  2000.         Macro
  2001.         _PBCatSearchAsync
  2002.             moveq               #24,D0
  2003.             dc.w                $A660
  2004.         EndM
  2005.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2006.         IMPORT_CFM_FUNCTION PBCatSearchAsync
  2007.     ENDIF
  2008.  
  2009. ;
  2010. ; pascal OSErr SetVol(ConstStr63Param volName, short vRefNum)
  2011. ;
  2012.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2013.         IMPORT_CFM_FUNCTION SetVol
  2014.     ENDIF
  2015.  
  2016. ;
  2017. ; pascal OSErr UnmountVol(ConstStr63Param volName, short vRefNum)
  2018. ;
  2019.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2020.         IMPORT_CFM_FUNCTION UnmountVol
  2021.     ENDIF
  2022.  
  2023. ;
  2024. ; pascal OSErr Eject(ConstStr63Param volName, short vRefNum)
  2025. ;
  2026.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2027.         IMPORT_CFM_FUNCTION Eject
  2028.     ENDIF
  2029.  
  2030. ;
  2031. ; pascal OSErr FlushVol(ConstStr63Param volName, short vRefNum)
  2032. ;
  2033.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2034.         IMPORT_CFM_FUNCTION FlushVol
  2035.     ENDIF
  2036.  
  2037. ;
  2038. ; pascal OSErr HSetVol(ConstStr63Param volName, short vRefNum, long dirID)
  2039. ;
  2040.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2041.         IMPORT_CFM_FUNCTION HSetVol
  2042.     ENDIF
  2043.  
  2044.     IF OLDROUTINELOCATIONS THEN
  2045. ;
  2046. ; pascal void AddDrive(short drvrRefNum, short drvNum, DrvQElPtr qEl)
  2047. ;
  2048.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2049.         IMPORT_CFM_FUNCTION AddDrive
  2050.     ENDIF
  2051.  
  2052.     ENDIF    ; OLDROUTINELOCATIONS
  2053. ;
  2054. ; pascal OSErr FSOpen(ConstStr255Param fileName, short vRefNum, short *refNum)
  2055. ;
  2056.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2057.         IMPORT_CFM_FUNCTION FSOpen
  2058.     ENDIF
  2059.  
  2060. ;
  2061. ; pascal OSErr OpenDF(ConstStr255Param fileName, short vRefNum, short *refNum)
  2062. ;
  2063.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2064.         IMPORT_CFM_FUNCTION OpenDF
  2065.     ENDIF
  2066.  
  2067. ;
  2068. ; pascal OSErr FSClose(short refNum)
  2069. ;
  2070.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2071.         IMPORT_CFM_FUNCTION FSClose
  2072.     ENDIF
  2073.  
  2074. ;
  2075. ; pascal OSErr FSRead(short refNum, long *count, void *buffPtr)
  2076. ;
  2077.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2078.         IMPORT_CFM_FUNCTION FSRead
  2079.     ENDIF
  2080.  
  2081. ;
  2082. ; pascal OSErr FSWrite(short refNum, long *count, const void *buffPtr)
  2083. ;
  2084.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2085.         IMPORT_CFM_FUNCTION FSWrite
  2086.     ENDIF
  2087.  
  2088. ;
  2089. ; pascal OSErr GetVInfo(short drvNum, StringPtr volName, short *vRefNum, long *freeBytes)
  2090. ;
  2091.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2092.         IMPORT_CFM_FUNCTION GetVInfo
  2093.     ENDIF
  2094.  
  2095. ;
  2096. ; pascal OSErr GetFInfo(ConstStr255Param fileName, short vRefNum, FInfo *fndrInfo)
  2097. ;
  2098.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2099.         IMPORT_CFM_FUNCTION GetFInfo
  2100.     ENDIF
  2101.  
  2102. ;
  2103. ; pascal OSErr GetVol(StringPtr volName, short *vRefNum)
  2104. ;
  2105.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2106.         IMPORT_CFM_FUNCTION GetVol
  2107.     ENDIF
  2108.  
  2109. ;
  2110. ; pascal OSErr Create(ConstStr255Param fileName, short vRefNum, OSType creator, OSType fileType)
  2111. ;
  2112.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2113.         IMPORT_CFM_FUNCTION Create
  2114.     ENDIF
  2115.  
  2116. ;
  2117. ; pascal OSErr FSDelete(ConstStr255Param fileName, short vRefNum)
  2118. ;
  2119.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2120.         IMPORT_CFM_FUNCTION FSDelete
  2121.     ENDIF
  2122.  
  2123. ;
  2124. ; pascal OSErr OpenRF(ConstStr255Param fileName, short vRefNum, short *refNum)
  2125. ;
  2126.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2127.         IMPORT_CFM_FUNCTION OpenRF
  2128.     ENDIF
  2129.  
  2130. ;
  2131. ; pascal OSErr Rename(ConstStr255Param oldName, short vRefNum, ConstStr255Param newName)
  2132. ;
  2133.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2134.         IMPORT_CFM_FUNCTION Rename
  2135.     ENDIF
  2136.  
  2137. ;
  2138. ; pascal OSErr SetFInfo(ConstStr255Param fileName, short vRefNum, const FInfo *fndrInfo)
  2139. ;
  2140.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2141.         IMPORT_CFM_FUNCTION SetFInfo
  2142.     ENDIF
  2143.  
  2144. ;
  2145. ; pascal OSErr SetFLock(ConstStr255Param fileName, short vRefNum)
  2146. ;
  2147.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2148.         IMPORT_CFM_FUNCTION SetFLock
  2149.     ENDIF
  2150.  
  2151. ;
  2152. ; pascal OSErr RstFLock(ConstStr255Param fileName, short vRefNum)
  2153. ;
  2154.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2155.         IMPORT_CFM_FUNCTION RstFLock
  2156.     ENDIF
  2157.  
  2158. ;
  2159. ; pascal OSErr Allocate(short refNum, long *count)
  2160. ;
  2161.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2162.         IMPORT_CFM_FUNCTION Allocate
  2163.     ENDIF
  2164.  
  2165. ;
  2166. ; pascal OSErr GetEOF(short refNum, long *logEOF)
  2167. ;
  2168.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2169.         IMPORT_CFM_FUNCTION GetEOF
  2170.     ENDIF
  2171.  
  2172. ;
  2173. ; pascal OSErr SetEOF(short refNum, long logEOF)
  2174. ;
  2175.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2176.         IMPORT_CFM_FUNCTION SetEOF
  2177.     ENDIF
  2178.  
  2179. ;
  2180. ; pascal OSErr GetFPos(short refNum, long *filePos)
  2181. ;
  2182.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2183.         IMPORT_CFM_FUNCTION GetFPos
  2184.     ENDIF
  2185.  
  2186. ;
  2187. ; pascal OSErr SetFPos(short refNum, short posMode, long posOff)
  2188. ;
  2189.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2190.         IMPORT_CFM_FUNCTION SetFPos
  2191.     ENDIF
  2192.  
  2193. ;
  2194. ; pascal OSErr GetVRefNum(short fileRefNum, short *vRefNum)
  2195. ;
  2196.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2197.         IMPORT_CFM_FUNCTION GetVRefNum
  2198.     ENDIF
  2199.  
  2200. ;
  2201. ; pascal OSErr PBOpenWDSync(WDPBPtr paramBlock)
  2202. ;
  2203.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2204.         ; parameters:
  2205.         ;    paramBlock      => A0
  2206.         ; returns:
  2207.         ;    OSErr           <= D0
  2208.         Macro
  2209.         _PBOpenWDSync
  2210.             moveq               #1,D0
  2211.             dc.w                $A260
  2212.         EndM
  2213.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2214.         IMPORT_CFM_FUNCTION PBOpenWDSync
  2215.     ENDIF
  2216.  
  2217. ;
  2218. ; pascal OSErr PBOpenWDAsync(WDPBPtr paramBlock)
  2219. ;
  2220.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2221.         ; parameters:
  2222.         ;    paramBlock      => A0
  2223.         ; returns:
  2224.         ;    OSErr           <= D0
  2225.         Macro
  2226.         _PBOpenWDAsync
  2227.             moveq               #1,D0
  2228.             dc.w                $A660
  2229.         EndM
  2230.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2231.         IMPORT_CFM_FUNCTION PBOpenWDAsync
  2232.     ENDIF
  2233.  
  2234. ;
  2235. ; pascal OSErr PBCloseWDSync(WDPBPtr paramBlock)
  2236. ;
  2237.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2238.         ; parameters:
  2239.         ;    paramBlock      => A0
  2240.         ; returns:
  2241.         ;    OSErr           <= D0
  2242.         Macro
  2243.         _PBCloseWDSync
  2244.             moveq               #2,D0
  2245.             dc.w                $A260
  2246.         EndM
  2247.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2248.         IMPORT_CFM_FUNCTION PBCloseWDSync
  2249.     ENDIF
  2250.  
  2251. ;
  2252. ; pascal OSErr PBCloseWDAsync(WDPBPtr paramBlock)
  2253. ;
  2254.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2255.         ; parameters:
  2256.         ;    paramBlock      => A0
  2257.         ; returns:
  2258.         ;    OSErr           <= D0
  2259.         Macro
  2260.         _PBCloseWDAsync
  2261.             moveq               #2,D0
  2262.             dc.w                $A660
  2263.         EndM
  2264.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2265.         IMPORT_CFM_FUNCTION PBCloseWDAsync
  2266.     ENDIF
  2267.  
  2268. ;
  2269. ; pascal OSErr PBHSetVolSync(WDPBPtr paramBlock)
  2270. ;
  2271.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2272.         ; parameters:
  2273.         ;    paramBlock      => A0
  2274.         ; returns:
  2275.         ;    OSErr           <= D0
  2276.         _PBHSetVolSync:    OPWORD    $A215
  2277.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2278.         IMPORT_CFM_FUNCTION PBHSetVolSync
  2279.     ENDIF
  2280.  
  2281. ;
  2282. ; pascal OSErr PBHSetVolAsync(WDPBPtr paramBlock)
  2283. ;
  2284.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2285.         ; parameters:
  2286.         ;    paramBlock      => A0
  2287.         ; returns:
  2288.         ;    OSErr           <= D0
  2289.         _PBHSetVolAsync:    OPWORD    $A615
  2290.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2291.         IMPORT_CFM_FUNCTION PBHSetVolAsync
  2292.     ENDIF
  2293.  
  2294. ;
  2295. ; pascal OSErr PBHGetVolSync(WDPBPtr paramBlock)
  2296. ;
  2297.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2298.         ; parameters:
  2299.         ;    paramBlock      => A0
  2300.         ; returns:
  2301.         ;    OSErr           <= D0
  2302.         _PBHGetVolSync:    OPWORD    $A214
  2303.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2304.         IMPORT_CFM_FUNCTION PBHGetVolSync
  2305.     ENDIF
  2306.  
  2307. ;
  2308. ; pascal OSErr PBHGetVolAsync(WDPBPtr paramBlock)
  2309. ;
  2310.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2311.         ; parameters:
  2312.         ;    paramBlock      => A0
  2313.         ; returns:
  2314.         ;    OSErr           <= D0
  2315.         _PBHGetVolAsync:    OPWORD    $A614
  2316.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2317.         IMPORT_CFM_FUNCTION PBHGetVolAsync
  2318.     ENDIF
  2319.  
  2320. ;
  2321. ; pascal OSErr PBCatMoveSync(CMovePBPtr paramBlock)
  2322. ;
  2323.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2324.         ; parameters:
  2325.         ;    paramBlock      => A0
  2326.         ; returns:
  2327.         ;    OSErr           <= D0
  2328.         Macro
  2329.         _PBCatMoveSync
  2330.             moveq               #5,D0
  2331.             dc.w                $A260
  2332.         EndM
  2333.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2334.         IMPORT_CFM_FUNCTION PBCatMoveSync
  2335.     ENDIF
  2336.  
  2337. ;
  2338. ; pascal OSErr PBCatMoveAsync(CMovePBPtr paramBlock)
  2339. ;
  2340.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2341.         ; parameters:
  2342.         ;    paramBlock      => A0
  2343.         ; returns:
  2344.         ;    OSErr           <= D0
  2345.         Macro
  2346.         _PBCatMoveAsync
  2347.             moveq               #5,D0
  2348.             dc.w                $A660
  2349.         EndM
  2350.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2351.         IMPORT_CFM_FUNCTION PBCatMoveAsync
  2352.     ENDIF
  2353.  
  2354. ;
  2355. ; pascal OSErr PBDirCreateSync(HParmBlkPtr paramBlock)
  2356. ;
  2357.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2358.         ; parameters:
  2359.         ;    paramBlock      => A0
  2360.         ; returns:
  2361.         ;    OSErr           <= D0
  2362.         Macro
  2363.         _PBDirCreateSync
  2364.             moveq               #6,D0
  2365.             dc.w                $A260
  2366.         EndM
  2367.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2368.         IMPORT_CFM_FUNCTION PBDirCreateSync
  2369.     ENDIF
  2370.  
  2371. ;
  2372. ; pascal OSErr PBDirCreateAsync(HParmBlkPtr paramBlock)
  2373. ;
  2374.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2375.         ; parameters:
  2376.         ;    paramBlock      => A0
  2377.         ; returns:
  2378.         ;    OSErr           <= D0
  2379.         Macro
  2380.         _PBDirCreateAsync
  2381.             moveq               #6,D0
  2382.             dc.w                $A660
  2383.         EndM
  2384.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2385.         IMPORT_CFM_FUNCTION PBDirCreateAsync
  2386.     ENDIF
  2387.  
  2388. ;
  2389. ; pascal OSErr PBGetWDInfoSync(WDPBPtr paramBlock)
  2390. ;
  2391.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2392.         ; parameters:
  2393.         ;    paramBlock      => A0
  2394.         ; returns:
  2395.         ;    OSErr           <= D0
  2396.         Macro
  2397.         _PBGetWDInfoSync
  2398.             moveq               #7,D0
  2399.             dc.w                $A260
  2400.         EndM
  2401.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2402.         IMPORT_CFM_FUNCTION PBGetWDInfoSync
  2403.     ENDIF
  2404.  
  2405. ;
  2406. ; pascal OSErr PBGetWDInfoAsync(WDPBPtr paramBlock)
  2407. ;
  2408.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2409.         ; parameters:
  2410.         ;    paramBlock      => A0
  2411.         ; returns:
  2412.         ;    OSErr           <= D0
  2413.         Macro
  2414.         _PBGetWDInfoAsync
  2415.             moveq               #7,D0
  2416.             dc.w                $A660
  2417.         EndM
  2418.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2419.         IMPORT_CFM_FUNCTION PBGetWDInfoAsync
  2420.     ENDIF
  2421.  
  2422. ;
  2423. ; pascal OSErr PBGetFCBInfoSync(FCBPBPtr paramBlock)
  2424. ;
  2425.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2426.         ; parameters:
  2427.         ;    paramBlock      => A0
  2428.         ; returns:
  2429.         ;    OSErr           <= D0
  2430.         Macro
  2431.         _PBGetFCBInfoSync
  2432.             moveq               #8,D0
  2433.             dc.w                $A260
  2434.         EndM
  2435.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2436.         IMPORT_CFM_FUNCTION PBGetFCBInfoSync
  2437.     ENDIF
  2438.  
  2439. ;
  2440. ; pascal OSErr PBGetFCBInfoAsync(FCBPBPtr paramBlock)
  2441. ;
  2442.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2443.         ; parameters:
  2444.         ;    paramBlock      => A0
  2445.         ; returns:
  2446.         ;    OSErr           <= D0
  2447.         Macro
  2448.         _PBGetFCBInfoAsync
  2449.             moveq               #8,D0
  2450.             dc.w                $A660
  2451.         EndM
  2452.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2453.         IMPORT_CFM_FUNCTION PBGetFCBInfoAsync
  2454.     ENDIF
  2455.  
  2456. ;
  2457. ; pascal OSErr PBGetCatInfoSync(CInfoPBPtr paramBlock)
  2458. ;
  2459.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2460.         ; parameters:
  2461.         ;    paramBlock      => A0
  2462.         ; returns:
  2463.         ;    OSErr           <= D0
  2464.         Macro
  2465.         _PBGetCatInfoSync
  2466.             moveq               #9,D0
  2467.             dc.w                $A260
  2468.         EndM
  2469.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2470.         IMPORT_CFM_FUNCTION PBGetCatInfoSync
  2471.     ENDIF
  2472.  
  2473. ;
  2474. ; pascal OSErr PBGetCatInfoAsync(CInfoPBPtr paramBlock)
  2475. ;
  2476.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2477.         ; parameters:
  2478.         ;    paramBlock      => A0
  2479.         ; returns:
  2480.         ;    OSErr           <= D0
  2481.         Macro
  2482.         _PBGetCatInfoAsync
  2483.             moveq               #9,D0
  2484.             dc.w                $A660
  2485.         EndM
  2486.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2487.         IMPORT_CFM_FUNCTION PBGetCatInfoAsync
  2488.     ENDIF
  2489.  
  2490. ;
  2491. ; pascal OSErr PBSetCatInfoSync(CInfoPBPtr paramBlock)
  2492. ;
  2493.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2494.         ; parameters:
  2495.         ;    paramBlock      => A0
  2496.         ; returns:
  2497.         ;    OSErr           <= D0
  2498.         Macro
  2499.         _PBSetCatInfoSync
  2500.             moveq               #10,D0
  2501.             dc.w                $A260
  2502.         EndM
  2503.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2504.         IMPORT_CFM_FUNCTION PBSetCatInfoSync
  2505.     ENDIF
  2506.  
  2507. ;
  2508. ; pascal OSErr PBSetCatInfoAsync(CInfoPBPtr paramBlock)
  2509. ;
  2510.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2511.         ; parameters:
  2512.         ;    paramBlock      => A0
  2513.         ; returns:
  2514.         ;    OSErr           <= D0
  2515.         Macro
  2516.         _PBSetCatInfoAsync
  2517.             moveq               #10,D0
  2518.             dc.w                $A660
  2519.         EndM
  2520.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2521.         IMPORT_CFM_FUNCTION PBSetCatInfoAsync
  2522.     ENDIF
  2523.  
  2524. ;
  2525. ; pascal OSErr PBAllocContigSync(ParmBlkPtr paramBlock)
  2526. ;
  2527.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2528.         ; parameters:
  2529.         ;    paramBlock      => A0
  2530.         ; returns:
  2531.         ;    OSErr           <= D0
  2532.         _PBAllocContigSync:    OPWORD    $A210
  2533.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2534.         IMPORT_CFM_FUNCTION PBAllocContigSync
  2535.     ENDIF
  2536.  
  2537. ;
  2538. ; pascal OSErr PBAllocContigAsync(ParmBlkPtr paramBlock)
  2539. ;
  2540.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2541.         ; parameters:
  2542.         ;    paramBlock      => A0
  2543.         ; returns:
  2544.         ;    OSErr           <= D0
  2545.         _PBAllocContigAsync:    OPWORD    $A610
  2546.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2547.         IMPORT_CFM_FUNCTION PBAllocContigAsync
  2548.     ENDIF
  2549.  
  2550. ;
  2551. ; pascal OSErr PBLockRangeSync(ParmBlkPtr paramBlock)
  2552. ;
  2553.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2554.         ; parameters:
  2555.         ;    paramBlock      => A0
  2556.         ; returns:
  2557.         ;    OSErr           <= D0
  2558.         Macro
  2559.         _PBLockRangeSync
  2560.             moveq               #16,D0
  2561.             dc.w                $A260
  2562.         EndM
  2563.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2564.         IMPORT_CFM_FUNCTION PBLockRangeSync
  2565.     ENDIF
  2566.  
  2567. ;
  2568. ; pascal OSErr PBLockRangeAsync(ParmBlkPtr paramBlock)
  2569. ;
  2570.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2571.         ; parameters:
  2572.         ;    paramBlock      => A0
  2573.         ; returns:
  2574.         ;    OSErr           <= D0
  2575.         Macro
  2576.         _PBLockRangeAsync
  2577.             moveq               #16,D0
  2578.             dc.w                $A660
  2579.         EndM
  2580.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2581.         IMPORT_CFM_FUNCTION PBLockRangeAsync
  2582.     ENDIF
  2583.  
  2584. ;
  2585. ; pascal OSErr PBUnlockRangeSync(ParmBlkPtr paramBlock)
  2586. ;
  2587.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2588.         ; parameters:
  2589.         ;    paramBlock      => A0
  2590.         ; returns:
  2591.         ;    OSErr           <= D0
  2592.         Macro
  2593.         _PBUnlockRangeSync
  2594.             moveq               #17,D0
  2595.             dc.w                $A260
  2596.         EndM
  2597.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2598.         IMPORT_CFM_FUNCTION PBUnlockRangeSync
  2599.     ENDIF
  2600.  
  2601. ;
  2602. ; pascal OSErr PBUnlockRangeAsync(ParmBlkPtr paramBlock)
  2603. ;
  2604.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2605.         ; parameters:
  2606.         ;    paramBlock      => A0
  2607.         ; returns:
  2608.         ;    OSErr           <= D0
  2609.         Macro
  2610.         _PBUnlockRangeAsync
  2611.             moveq               #17,D0
  2612.             dc.w                $A660
  2613.         EndM
  2614.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2615.         IMPORT_CFM_FUNCTION PBUnlockRangeAsync
  2616.     ENDIF
  2617.  
  2618. ;
  2619. ; pascal OSErr PBSetVInfoSync(HParmBlkPtr paramBlock)
  2620. ;
  2621.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2622.         ; parameters:
  2623.         ;    paramBlock      => A0
  2624.         ; returns:
  2625.         ;    OSErr           <= D0
  2626.         Macro
  2627.         _PBSetVInfoSync
  2628.             moveq               #11,D0
  2629.             dc.w                $A260
  2630.         EndM
  2631.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2632.         IMPORT_CFM_FUNCTION PBSetVInfoSync
  2633.     ENDIF
  2634.  
  2635. ;
  2636. ; pascal OSErr PBSetVInfoAsync(HParmBlkPtr paramBlock)
  2637. ;
  2638.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2639.         ; parameters:
  2640.         ;    paramBlock      => A0
  2641.         ; returns:
  2642.         ;    OSErr           <= D0
  2643.         Macro
  2644.         _PBSetVInfoAsync
  2645.             moveq               #11,D0
  2646.             dc.w                $A660
  2647.         EndM
  2648.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2649.         IMPORT_CFM_FUNCTION PBSetVInfoAsync
  2650.     ENDIF
  2651.  
  2652. ;
  2653. ; pascal OSErr PBHGetVInfoSync(HParmBlkPtr paramBlock)
  2654. ;
  2655.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2656.         ; parameters:
  2657.         ;    paramBlock      => A0
  2658.         ; returns:
  2659.         ;    OSErr           <= D0
  2660.         _PBHGetVInfoSync:    OPWORD    $A207
  2661.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2662.         IMPORT_CFM_FUNCTION PBHGetVInfoSync
  2663.     ENDIF
  2664.  
  2665. ;
  2666. ; pascal OSErr PBHGetVInfoAsync(HParmBlkPtr paramBlock)
  2667. ;
  2668.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2669.         ; parameters:
  2670.         ;    paramBlock      => A0
  2671.         ; returns:
  2672.         ;    OSErr           <= D0
  2673.         _PBHGetVInfoAsync:    OPWORD    $A607
  2674.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2675.         IMPORT_CFM_FUNCTION PBHGetVInfoAsync
  2676.     ENDIF
  2677.  
  2678. ;
  2679. ; pascal OSErr PBHOpenSync(HParmBlkPtr paramBlock)
  2680. ;
  2681.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2682.         ; parameters:
  2683.         ;    paramBlock      => A0
  2684.         ; returns:
  2685.         ;    OSErr           <= D0
  2686.         _PBHOpenSync:    OPWORD    $A200
  2687.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2688.         IMPORT_CFM_FUNCTION PBHOpenSync
  2689.     ENDIF
  2690.  
  2691. ;
  2692. ; pascal OSErr PBHOpenAsync(HParmBlkPtr paramBlock)
  2693. ;
  2694.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2695.         ; parameters:
  2696.         ;    paramBlock      => A0
  2697.         ; returns:
  2698.         ;    OSErr           <= D0
  2699.         _PBHOpenAsync:    OPWORD    $A600
  2700.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2701.         IMPORT_CFM_FUNCTION PBHOpenAsync
  2702.     ENDIF
  2703.  
  2704. ;
  2705. ; pascal OSErr PBHOpenRFSync(HParmBlkPtr paramBlock)
  2706. ;
  2707.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2708.         ; parameters:
  2709.         ;    paramBlock      => A0
  2710.         ; returns:
  2711.         ;    OSErr           <= D0
  2712.         _PBHOpenRFSync:    OPWORD    $A20A
  2713.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2714.         IMPORT_CFM_FUNCTION PBHOpenRFSync
  2715.     ENDIF
  2716.  
  2717. ;
  2718. ; pascal OSErr PBHOpenRFAsync(HParmBlkPtr paramBlock)
  2719. ;
  2720.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2721.         ; parameters:
  2722.         ;    paramBlock      => A0
  2723.         ; returns:
  2724.         ;    OSErr           <= D0
  2725.         _PBHOpenRFAsync:    OPWORD    $A60A
  2726.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2727.         IMPORT_CFM_FUNCTION PBHOpenRFAsync
  2728.     ENDIF
  2729.  
  2730. ;
  2731. ; pascal OSErr PBHOpenDFSync(HParmBlkPtr paramBlock)
  2732. ;
  2733.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2734.         ; parameters:
  2735.         ;    paramBlock      => A0
  2736.         ; returns:
  2737.         ;    OSErr           <= D0
  2738.         Macro
  2739.         _PBHOpenDFSync
  2740.             moveq               #26,D0
  2741.             dc.w                $A260
  2742.         EndM
  2743.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2744.         IMPORT_CFM_FUNCTION PBHOpenDFSync
  2745.     ENDIF
  2746.  
  2747. ;
  2748. ; pascal OSErr PBHOpenDFAsync(HParmBlkPtr paramBlock)
  2749. ;
  2750.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2751.         ; parameters:
  2752.         ;    paramBlock      => A0
  2753.         ; returns:
  2754.         ;    OSErr           <= D0
  2755.         Macro
  2756.         _PBHOpenDFAsync
  2757.             moveq               #26,D0
  2758.             dc.w                $A660
  2759.         EndM
  2760.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2761.         IMPORT_CFM_FUNCTION PBHOpenDFAsync
  2762.     ENDIF
  2763.  
  2764. ;
  2765. ; pascal OSErr PBHCreateSync(HParmBlkPtr paramBlock)
  2766. ;
  2767.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2768.         ; parameters:
  2769.         ;    paramBlock      => A0
  2770.         ; returns:
  2771.         ;    OSErr           <= D0
  2772.         _PBHCreateSync:    OPWORD    $A208
  2773.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2774.         IMPORT_CFM_FUNCTION PBHCreateSync
  2775.     ENDIF
  2776.  
  2777. ;
  2778. ; pascal OSErr PBHCreateAsync(HParmBlkPtr paramBlock)
  2779. ;
  2780.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2781.         ; parameters:
  2782.         ;    paramBlock      => A0
  2783.         ; returns:
  2784.         ;    OSErr           <= D0
  2785.         _PBHCreateAsync:    OPWORD    $A608
  2786.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2787.         IMPORT_CFM_FUNCTION PBHCreateAsync
  2788.     ENDIF
  2789.  
  2790. ;
  2791. ; pascal OSErr PBHDeleteSync(HParmBlkPtr paramBlock)
  2792. ;
  2793.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2794.         ; parameters:
  2795.         ;    paramBlock      => A0
  2796.         ; returns:
  2797.         ;    OSErr           <= D0
  2798.         _PBHDeleteSync:    OPWORD    $A209
  2799.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2800.         IMPORT_CFM_FUNCTION PBHDeleteSync
  2801.     ENDIF
  2802.  
  2803. ;
  2804. ; pascal OSErr PBHDeleteAsync(HParmBlkPtr paramBlock)
  2805. ;
  2806.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2807.         ; parameters:
  2808.         ;    paramBlock      => A0
  2809.         ; returns:
  2810.         ;    OSErr           <= D0
  2811.         _PBHDeleteAsync:    OPWORD    $A609
  2812.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2813.         IMPORT_CFM_FUNCTION PBHDeleteAsync
  2814.     ENDIF
  2815.  
  2816. ;
  2817. ; pascal OSErr PBHRenameSync(HParmBlkPtr paramBlock)
  2818. ;
  2819.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2820.         ; parameters:
  2821.         ;    paramBlock      => A0
  2822.         ; returns:
  2823.         ;    OSErr           <= D0
  2824.         _PBHRenameSync:    OPWORD    $A20B
  2825.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2826.         IMPORT_CFM_FUNCTION PBHRenameSync
  2827.     ENDIF
  2828.  
  2829. ;
  2830. ; pascal OSErr PBHRenameAsync(HParmBlkPtr paramBlock)
  2831. ;
  2832.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2833.         ; parameters:
  2834.         ;    paramBlock      => A0
  2835.         ; returns:
  2836.         ;    OSErr           <= D0
  2837.         _PBHRenameAsync:    OPWORD    $A60B
  2838.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2839.         IMPORT_CFM_FUNCTION PBHRenameAsync
  2840.     ENDIF
  2841.  
  2842. ;
  2843. ; pascal OSErr PBHRstFLockSync(HParmBlkPtr paramBlock)
  2844. ;
  2845.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2846.         ; parameters:
  2847.         ;    paramBlock      => A0
  2848.         ; returns:
  2849.         ;    OSErr           <= D0
  2850.         _PBHRstFLockSync:    OPWORD    $A242
  2851.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2852.         IMPORT_CFM_FUNCTION PBHRstFLockSync
  2853.     ENDIF
  2854.  
  2855. ;
  2856. ; pascal OSErr PBHRstFLockAsync(HParmBlkPtr paramBlock)
  2857. ;
  2858.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2859.         ; parameters:
  2860.         ;    paramBlock      => A0
  2861.         ; returns:
  2862.         ;    OSErr           <= D0
  2863.         _PBHRstFLockAsync:    OPWORD    $A642
  2864.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2865.         IMPORT_CFM_FUNCTION PBHRstFLockAsync
  2866.     ENDIF
  2867.  
  2868. ;
  2869. ; pascal OSErr PBHSetFLockSync(HParmBlkPtr paramBlock)
  2870. ;
  2871.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2872.         ; parameters:
  2873.         ;    paramBlock      => A0
  2874.         ; returns:
  2875.         ;    OSErr           <= D0
  2876.         _PBHSetFLockSync:    OPWORD    $A241
  2877.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2878.         IMPORT_CFM_FUNCTION PBHSetFLockSync
  2879.     ENDIF
  2880.  
  2881. ;
  2882. ; pascal OSErr PBHSetFLockAsync(HParmBlkPtr paramBlock)
  2883. ;
  2884.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2885.         ; parameters:
  2886.         ;    paramBlock      => A0
  2887.         ; returns:
  2888.         ;    OSErr           <= D0
  2889.         _PBHSetFLockAsync:    OPWORD    $A641
  2890.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2891.         IMPORT_CFM_FUNCTION PBHSetFLockAsync
  2892.     ENDIF
  2893.  
  2894. ;
  2895. ; pascal OSErr PBHGetFInfoSync(HParmBlkPtr paramBlock)
  2896. ;
  2897.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2898.         ; parameters:
  2899.         ;    paramBlock      => A0
  2900.         ; returns:
  2901.         ;    OSErr           <= D0
  2902.         _PBHGetFInfoSync:    OPWORD    $A20C
  2903.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2904.         IMPORT_CFM_FUNCTION PBHGetFInfoSync
  2905.     ENDIF
  2906.  
  2907. ;
  2908. ; pascal OSErr PBHGetFInfoAsync(HParmBlkPtr paramBlock)
  2909. ;
  2910.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2911.         ; parameters:
  2912.         ;    paramBlock      => A0
  2913.         ; returns:
  2914.         ;    OSErr           <= D0
  2915.         _PBHGetFInfoAsync:    OPWORD    $A60C
  2916.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2917.         IMPORT_CFM_FUNCTION PBHGetFInfoAsync
  2918.     ENDIF
  2919.  
  2920. ;
  2921. ; pascal OSErr PBHSetFInfoSync(HParmBlkPtr paramBlock)
  2922. ;
  2923.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2924.         ; parameters:
  2925.         ;    paramBlock      => A0
  2926.         ; returns:
  2927.         ;    OSErr           <= D0
  2928.         _PBHSetFInfoSync:    OPWORD    $A20D
  2929.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2930.         IMPORT_CFM_FUNCTION PBHSetFInfoSync
  2931.     ENDIF
  2932.  
  2933. ;
  2934. ; pascal OSErr PBHSetFInfoAsync(HParmBlkPtr paramBlock)
  2935. ;
  2936.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2937.         ; parameters:
  2938.         ;    paramBlock      => A0
  2939.         ; returns:
  2940.         ;    OSErr           <= D0
  2941.         _PBHSetFInfoAsync:    OPWORD    $A60D
  2942.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2943.         IMPORT_CFM_FUNCTION PBHSetFInfoAsync
  2944.     ENDIF
  2945.  
  2946. ;
  2947. ; pascal OSErr PBMakeFSSpecSync(HParmBlkPtr paramBlock)
  2948. ;
  2949.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2950.         ; parameters:
  2951.         ;    paramBlock      => A0
  2952.         ; returns:
  2953.         ;    OSErr           <= D0
  2954.         Macro
  2955.         _PBMakeFSSpecSync
  2956.             moveq               #27,D0
  2957.             dc.w                $A260
  2958.         EndM
  2959.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2960.         IMPORT_CFM_FUNCTION PBMakeFSSpecSync
  2961.     ENDIF
  2962.  
  2963. ;
  2964. ; pascal OSErr PBMakeFSSpecAsync(HParmBlkPtr paramBlock)
  2965. ;
  2966.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2967.         ; parameters:
  2968.         ;    paramBlock      => A0
  2969.         ; returns:
  2970.         ;    OSErr           <= D0
  2971.         Macro
  2972.         _PBMakeFSSpecAsync
  2973.             moveq               #27,D0
  2974.             dc.w                $A660
  2975.         EndM
  2976.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2977.         IMPORT_CFM_FUNCTION PBMakeFSSpecAsync
  2978.     ENDIF
  2979.  
  2980. ;
  2981. ; pascal void FInitQueue(void )
  2982. ;
  2983.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2984.         _FInitQueue:    OPWORD    $A016
  2985.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2986.         IMPORT_CFM_FUNCTION FInitQueue
  2987.     ENDIF
  2988.  
  2989.  
  2990. ;
  2991. ; pascal QHdrPtr GetFSQHdr(void )
  2992. ;
  2993.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2994.         Macro
  2995.         _GetFSQHdr            &dest=(sp)
  2996.             move.l            #$00000360,&dest
  2997.         EndM
  2998.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2999.         IMPORT_CFM_FUNCTION GetFSQHdr
  3000.     ENDIF
  3001.  
  3002. ;
  3003. ; pascal QHdrPtr GetVCBQHdr(void )
  3004. ;
  3005.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3006.         Macro
  3007.         _GetVCBQHdr           &dest=(sp)
  3008.             move.l            #$00000356,&dest
  3009.         EndM
  3010.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3011.         IMPORT_CFM_FUNCTION GetVCBQHdr
  3012.     ENDIF
  3013.  
  3014.     IF OLDROUTINELOCATIONS THEN
  3015. ;
  3016. ; pascal QHdrPtr GetDrvQHdr(void )
  3017. ;
  3018.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3019.         Macro
  3020.         _GetDrvQHdr           &dest=(sp)
  3021.             move.l            #$00000308,&dest
  3022.         EndM
  3023.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3024.         IMPORT_CFM_FUNCTION GetDrvQHdr
  3025.     ENDIF
  3026.  
  3027.     ENDIF    ; OLDROUTINELOCATIONS
  3028. ;
  3029. ; pascal OSErr HGetVol(StringPtr volName, short *vRefNum, long *dirID)
  3030. ;
  3031.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3032.         IMPORT_CFM_FUNCTION HGetVol
  3033.     ENDIF
  3034.  
  3035. ;
  3036. ; pascal OSErr HOpen(short vRefNum, long dirID, ConstStr255Param fileName, SInt8 permission, short *refNum)
  3037. ;
  3038.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3039.         IMPORT_CFM_FUNCTION HOpen
  3040.     ENDIF
  3041.  
  3042. ;
  3043. ; pascal OSErr HOpenDF(short vRefNum, long dirID, ConstStr255Param fileName, SInt8 permission, short *refNum)
  3044. ;
  3045.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3046.         IMPORT_CFM_FUNCTION HOpenDF
  3047.     ENDIF
  3048.  
  3049. ;
  3050. ; pascal OSErr HOpenRF(short vRefNum, long dirID, ConstStr255Param fileName, SInt8 permission, short *refNum)
  3051. ;
  3052.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3053.         IMPORT_CFM_FUNCTION HOpenRF
  3054.     ENDIF
  3055.  
  3056. ;
  3057. ; pascal OSErr AllocContig(short refNum, long *count)
  3058. ;
  3059.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3060.         IMPORT_CFM_FUNCTION AllocContig
  3061.     ENDIF
  3062.  
  3063. ;
  3064. ; pascal OSErr HCreate(short vRefNum, long dirID, ConstStr255Param fileName, OSType creator, OSType fileType)
  3065. ;
  3066.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3067.         IMPORT_CFM_FUNCTION HCreate
  3068.     ENDIF
  3069.  
  3070. ;
  3071. ; pascal OSErr DirCreate(short vRefNum, long parentDirID, ConstStr255Param directoryName, long *createdDirID)
  3072. ;
  3073.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3074.         IMPORT_CFM_FUNCTION DirCreate
  3075.     ENDIF
  3076.  
  3077. ;
  3078. ; pascal OSErr HDelete(short vRefNum, long dirID, ConstStr255Param fileName)
  3079. ;
  3080.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3081.         IMPORT_CFM_FUNCTION HDelete
  3082.     ENDIF
  3083.  
  3084. ;
  3085. ; pascal OSErr HGetFInfo(short vRefNum, long dirID, ConstStr255Param fileName, FInfo *fndrInfo)
  3086. ;
  3087.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3088.         IMPORT_CFM_FUNCTION HGetFInfo
  3089.     ENDIF
  3090.  
  3091. ;
  3092. ; pascal OSErr HSetFInfo(short vRefNum, long dirID, ConstStr255Param fileName, const FInfo *fndrInfo)
  3093. ;
  3094.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3095.         IMPORT_CFM_FUNCTION HSetFInfo
  3096.     ENDIF
  3097.  
  3098. ;
  3099. ; pascal OSErr HSetFLock(short vRefNum, long dirID, ConstStr255Param fileName)
  3100. ;
  3101.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3102.         IMPORT_CFM_FUNCTION HSetFLock
  3103.     ENDIF
  3104.  
  3105. ;
  3106. ; pascal OSErr HRstFLock(short vRefNum, long dirID, ConstStr255Param fileName)
  3107. ;
  3108.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3109.         IMPORT_CFM_FUNCTION HRstFLock
  3110.     ENDIF
  3111.  
  3112. ;
  3113. ; pascal OSErr HRename(short vRefNum, long dirID, ConstStr255Param oldName, ConstStr255Param newName)
  3114. ;
  3115.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3116.         IMPORT_CFM_FUNCTION HRename
  3117.     ENDIF
  3118.  
  3119. ;
  3120. ; pascal OSErr CatMove(short vRefNum, long dirID, ConstStr255Param oldName, long newDirID, ConstStr255Param newName)
  3121. ;
  3122.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3123.         IMPORT_CFM_FUNCTION CatMove
  3124.     ENDIF
  3125.  
  3126. ;
  3127. ; pascal OSErr OpenWD(short vRefNum, long dirID, long procID, short *wdRefNum)
  3128. ;
  3129.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3130.         IMPORT_CFM_FUNCTION OpenWD
  3131.     ENDIF
  3132.  
  3133. ;
  3134. ; pascal OSErr CloseWD(short wdRefNum)
  3135. ;
  3136.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3137.         IMPORT_CFM_FUNCTION CloseWD
  3138.     ENDIF
  3139.  
  3140. ;
  3141. ; pascal OSErr GetWDInfo(short wdRefNum, short *vRefNum, long *dirID, long *procID)
  3142. ;
  3143.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3144.         IMPORT_CFM_FUNCTION GetWDInfo
  3145.     ENDIF
  3146.  
  3147. ;   shared environment  
  3148. ;
  3149. ; pascal OSErr PBHGetVolParmsSync(HParmBlkPtr paramBlock)
  3150. ;
  3151.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3152.         ; parameters:
  3153.         ;    paramBlock      => A0
  3154.         ; returns:
  3155.         ;    OSErr           <= D0
  3156.         Macro
  3157.         _PBHGetVolParmsSync
  3158.             moveq               #48,D0
  3159.             dc.w                $A260
  3160.         EndM
  3161.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3162.         IMPORT_CFM_FUNCTION PBHGetVolParmsSync
  3163.     ENDIF
  3164.  
  3165. ;
  3166. ; pascal OSErr PBHGetVolParmsAsync(HParmBlkPtr paramBlock)
  3167. ;
  3168.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3169.         ; parameters:
  3170.         ;    paramBlock      => A0
  3171.         ; returns:
  3172.         ;    OSErr           <= D0
  3173.         Macro
  3174.         _PBHGetVolParmsAsync
  3175.             moveq               #48,D0
  3176.             dc.w                $A660
  3177.         EndM
  3178.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3179.         IMPORT_CFM_FUNCTION PBHGetVolParmsAsync
  3180.     ENDIF
  3181.  
  3182. ;
  3183. ; pascal OSErr PBHGetLogInInfoSync(HParmBlkPtr paramBlock)
  3184. ;
  3185.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3186.         ; parameters:
  3187.         ;    paramBlock      => A0
  3188.         ; returns:
  3189.         ;    OSErr           <= D0
  3190.         Macro
  3191.         _PBHGetLogInInfoSync
  3192.             moveq               #49,D0
  3193.             dc.w                $A260
  3194.         EndM
  3195.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3196.         IMPORT_CFM_FUNCTION PBHGetLogInInfoSync
  3197.     ENDIF
  3198.  
  3199. ;
  3200. ; pascal OSErr PBHGetLogInInfoAsync(HParmBlkPtr paramBlock)
  3201. ;
  3202.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3203.         ; parameters:
  3204.         ;    paramBlock      => A0
  3205.         ; returns:
  3206.         ;    OSErr           <= D0
  3207.         Macro
  3208.         _PBHGetLogInInfoAsync
  3209.             moveq               #49,D0
  3210.             dc.w                $A660
  3211.         EndM
  3212.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3213.         IMPORT_CFM_FUNCTION PBHGetLogInInfoAsync
  3214.     ENDIF
  3215.  
  3216. ;
  3217. ; pascal OSErr PBHGetDirAccessSync(HParmBlkPtr paramBlock)
  3218. ;
  3219.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3220.         ; parameters:
  3221.         ;    paramBlock      => A0
  3222.         ; returns:
  3223.         ;    OSErr           <= D0
  3224.         Macro
  3225.         _PBHGetDirAccessSync
  3226.             moveq               #50,D0
  3227.             dc.w                $A260
  3228.         EndM
  3229.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3230.         IMPORT_CFM_FUNCTION PBHGetDirAccessSync
  3231.     ENDIF
  3232.  
  3233. ;
  3234. ; pascal OSErr PBHGetDirAccessAsync(HParmBlkPtr paramBlock)
  3235. ;
  3236.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3237.         ; parameters:
  3238.         ;    paramBlock      => A0
  3239.         ; returns:
  3240.         ;    OSErr           <= D0
  3241.         Macro
  3242.         _PBHGetDirAccessAsync
  3243.             moveq               #50,D0
  3244.             dc.w                $A660
  3245.         EndM
  3246.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3247.         IMPORT_CFM_FUNCTION PBHGetDirAccessAsync
  3248.     ENDIF
  3249.  
  3250. ;
  3251. ; pascal OSErr PBHSetDirAccessSync(HParmBlkPtr paramBlock)
  3252. ;
  3253.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3254.         ; parameters:
  3255.         ;    paramBlock      => A0
  3256.         ; returns:
  3257.         ;    OSErr           <= D0
  3258.         Macro
  3259.         _PBHSetDirAccessSync
  3260.             moveq               #51,D0
  3261.             dc.w                $A260
  3262.         EndM
  3263.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3264.         IMPORT_CFM_FUNCTION PBHSetDirAccessSync
  3265.     ENDIF
  3266.  
  3267. ;
  3268. ; pascal OSErr PBHSetDirAccessAsync(HParmBlkPtr paramBlock)
  3269. ;
  3270.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3271.         ; parameters:
  3272.         ;    paramBlock      => A0
  3273.         ; returns:
  3274.         ;    OSErr           <= D0
  3275.         Macro
  3276.         _PBHSetDirAccessAsync
  3277.             moveq               #51,D0
  3278.             dc.w                $A660
  3279.         EndM
  3280.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3281.         IMPORT_CFM_FUNCTION PBHSetDirAccessAsync
  3282.     ENDIF
  3283.  
  3284. ;
  3285. ; pascal OSErr PBHMapIDSync(HParmBlkPtr paramBlock)
  3286. ;
  3287.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3288.         ; parameters:
  3289.         ;    paramBlock      => A0
  3290.         ; returns:
  3291.         ;    OSErr           <= D0
  3292.         Macro
  3293.         _PBHMapIDSync
  3294.             moveq               #52,D0
  3295.             dc.w                $A260
  3296.         EndM
  3297.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3298.         IMPORT_CFM_FUNCTION PBHMapIDSync
  3299.     ENDIF
  3300.  
  3301. ;
  3302. ; pascal OSErr PBHMapIDAsync(HParmBlkPtr paramBlock)
  3303. ;
  3304.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3305.         ; parameters:
  3306.         ;    paramBlock      => A0
  3307.         ; returns:
  3308.         ;    OSErr           <= D0
  3309.         Macro
  3310.         _PBHMapIDAsync
  3311.             moveq               #52,D0
  3312.             dc.w                $A660
  3313.         EndM
  3314.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3315.         IMPORT_CFM_FUNCTION PBHMapIDAsync
  3316.     ENDIF
  3317.  
  3318. ;
  3319. ; pascal OSErr PBHMapNameSync(HParmBlkPtr paramBlock)
  3320. ;
  3321.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3322.         ; parameters:
  3323.         ;    paramBlock      => A0
  3324.         ; returns:
  3325.         ;    OSErr           <= D0
  3326.         Macro
  3327.         _PBHMapNameSync
  3328.             moveq               #53,D0
  3329.             dc.w                $A260
  3330.         EndM
  3331.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3332.         IMPORT_CFM_FUNCTION PBHMapNameSync
  3333.     ENDIF
  3334.  
  3335. ;
  3336. ; pascal OSErr PBHMapNameAsync(HParmBlkPtr paramBlock)
  3337. ;
  3338.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3339.         ; parameters:
  3340.         ;    paramBlock      => A0
  3341.         ; returns:
  3342.         ;    OSErr           <= D0
  3343.         Macro
  3344.         _PBHMapNameAsync
  3345.             moveq               #53,D0
  3346.             dc.w                $A660
  3347.         EndM
  3348.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3349.         IMPORT_CFM_FUNCTION PBHMapNameAsync
  3350.     ENDIF
  3351.  
  3352. ;
  3353. ; pascal OSErr PBHCopyFileSync(HParmBlkPtr paramBlock)
  3354. ;
  3355.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3356.         ; parameters:
  3357.         ;    paramBlock      => A0
  3358.         ; returns:
  3359.         ;    OSErr           <= D0
  3360.         Macro
  3361.         _PBHCopyFileSync
  3362.             moveq               #54,D0
  3363.             dc.w                $A260
  3364.         EndM
  3365.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3366.         IMPORT_CFM_FUNCTION PBHCopyFileSync
  3367.     ENDIF
  3368.  
  3369. ;
  3370. ; pascal OSErr PBHCopyFileAsync(HParmBlkPtr paramBlock)
  3371. ;
  3372.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3373.         ; parameters:
  3374.         ;    paramBlock      => A0
  3375.         ; returns:
  3376.         ;    OSErr           <= D0
  3377.         Macro
  3378.         _PBHCopyFileAsync
  3379.             moveq               #54,D0
  3380.             dc.w                $A660
  3381.         EndM
  3382.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3383.         IMPORT_CFM_FUNCTION PBHCopyFileAsync
  3384.     ENDIF
  3385.  
  3386. ;
  3387. ; pascal OSErr PBHMoveRenameSync(HParmBlkPtr paramBlock)
  3388. ;
  3389.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3390.         ; parameters:
  3391.         ;    paramBlock      => A0
  3392.         ; returns:
  3393.         ;    OSErr           <= D0
  3394.         Macro
  3395.         _PBHMoveRenameSync
  3396.             moveq               #55,D0
  3397.             dc.w                $A260
  3398.         EndM
  3399.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3400.         IMPORT_CFM_FUNCTION PBHMoveRenameSync
  3401.     ENDIF
  3402.  
  3403. ;
  3404. ; pascal OSErr PBHMoveRenameAsync(HParmBlkPtr paramBlock)
  3405. ;
  3406.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3407.         ; parameters:
  3408.         ;    paramBlock      => A0
  3409.         ; returns:
  3410.         ;    OSErr           <= D0
  3411.         Macro
  3412.         _PBHMoveRenameAsync
  3413.             moveq               #55,D0
  3414.             dc.w                $A660
  3415.         EndM
  3416.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3417.         IMPORT_CFM_FUNCTION PBHMoveRenameAsync
  3418.     ENDIF
  3419.  
  3420. ;
  3421. ; pascal OSErr PBHOpenDenySync(HParmBlkPtr paramBlock)
  3422. ;
  3423.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3424.         ; parameters:
  3425.         ;    paramBlock      => A0
  3426.         ; returns:
  3427.         ;    OSErr           <= D0
  3428.         Macro
  3429.         _PBHOpenDenySync
  3430.             moveq               #56,D0
  3431.             dc.w                $A260
  3432.         EndM
  3433.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3434.         IMPORT_CFM_FUNCTION PBHOpenDenySync
  3435.     ENDIF
  3436.  
  3437. ;
  3438. ; pascal OSErr PBHOpenDenyAsync(HParmBlkPtr paramBlock)
  3439. ;
  3440.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3441.         ; parameters:
  3442.         ;    paramBlock      => A0
  3443.         ; returns:
  3444.         ;    OSErr           <= D0
  3445.         Macro
  3446.         _PBHOpenDenyAsync
  3447.             moveq               #56,D0
  3448.             dc.w                $A660
  3449.         EndM
  3450.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3451.         IMPORT_CFM_FUNCTION PBHOpenDenyAsync
  3452.     ENDIF
  3453.  
  3454. ;
  3455. ; pascal OSErr PBHOpenRFDenySync(HParmBlkPtr paramBlock)
  3456. ;
  3457.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3458.         ; parameters:
  3459.         ;    paramBlock      => A0
  3460.         ; returns:
  3461.         ;    OSErr           <= D0
  3462.         Macro
  3463.         _PBHOpenRFDenySync
  3464.             moveq               #57,D0
  3465.             dc.w                $A260
  3466.         EndM
  3467.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3468.         IMPORT_CFM_FUNCTION PBHOpenRFDenySync
  3469.     ENDIF
  3470.  
  3471. ;
  3472. ; pascal OSErr PBHOpenRFDenyAsync(HParmBlkPtr paramBlock)
  3473. ;
  3474.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3475.         ; parameters:
  3476.         ;    paramBlock      => A0
  3477.         ; returns:
  3478.         ;    OSErr           <= D0
  3479.         Macro
  3480.         _PBHOpenRFDenyAsync
  3481.             moveq               #57,D0
  3482.             dc.w                $A660
  3483.         EndM
  3484.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3485.         IMPORT_CFM_FUNCTION PBHOpenRFDenyAsync
  3486.     ENDIF
  3487.  
  3488. ;
  3489. ; pascal OSErr PBGetXCatInfoSync(XCInfoPBPtr paramBlock)
  3490. ;
  3491.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3492.         ; parameters:
  3493.         ;    paramBlock      => A0
  3494.         ; returns:
  3495.         ;    OSErr           <= D0
  3496.         Macro
  3497.         _PBGetXCatInfoSync
  3498.             moveq               #58,D0
  3499.             dc.w                $A260
  3500.         EndM
  3501.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3502.         IMPORT_CFM_FUNCTION PBGetXCatInfoSync
  3503.     ENDIF
  3504.  
  3505. ;
  3506. ; pascal OSErr PBGetXCatInfoAsync(XCInfoPBPtr paramBlock)
  3507. ;
  3508.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3509.         ; parameters:
  3510.         ;    paramBlock      => A0
  3511.         ; returns:
  3512.         ;    OSErr           <= D0
  3513.         Macro
  3514.         _PBGetXCatInfoAsync
  3515.             moveq               #58,D0
  3516.             dc.w                $A660
  3517.         EndM
  3518.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3519.         IMPORT_CFM_FUNCTION PBGetXCatInfoAsync
  3520.     ENDIF
  3521.  
  3522. ;
  3523. ; pascal OSErr PBExchangeFilesSync(HParmBlkPtr paramBlock)
  3524. ;
  3525.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3526.         ; parameters:
  3527.         ;    paramBlock      => A0
  3528.         ; returns:
  3529.         ;    OSErr           <= D0
  3530.         Macro
  3531.         _PBExchangeFilesSync
  3532.             moveq               #23,D0
  3533.             dc.w                $A260
  3534.         EndM
  3535.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3536.         IMPORT_CFM_FUNCTION PBExchangeFilesSync
  3537.     ENDIF
  3538.  
  3539. ;
  3540. ; pascal OSErr PBExchangeFilesAsync(HParmBlkPtr paramBlock)
  3541. ;
  3542.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3543.         ; parameters:
  3544.         ;    paramBlock      => A0
  3545.         ; returns:
  3546.         ;    OSErr           <= D0
  3547.         Macro
  3548.         _PBExchangeFilesAsync
  3549.             moveq               #23,D0
  3550.             dc.w                $A660
  3551.         EndM
  3552.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3553.         IMPORT_CFM_FUNCTION PBExchangeFilesAsync
  3554.     ENDIF
  3555.  
  3556. ;
  3557. ; pascal OSErr PBCreateFileIDRefSync(HParmBlkPtr paramBlock)
  3558. ;
  3559.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3560.         ; parameters:
  3561.         ;    paramBlock      => A0
  3562.         ; returns:
  3563.         ;    OSErr           <= D0
  3564.         Macro
  3565.         _PBCreateFileIDRefSync
  3566.             moveq               #20,D0
  3567.             dc.w                $A260
  3568.         EndM
  3569.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3570.         IMPORT_CFM_FUNCTION PBCreateFileIDRefSync
  3571.     ENDIF
  3572.  
  3573. ;
  3574. ; pascal OSErr PBCreateFileIDRefAsync(HParmBlkPtr paramBlock)
  3575. ;
  3576.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3577.         ; parameters:
  3578.         ;    paramBlock      => A0
  3579.         ; returns:
  3580.         ;    OSErr           <= D0
  3581.         Macro
  3582.         _PBCreateFileIDRefAsync
  3583.             moveq               #20,D0
  3584.             dc.w                $A660
  3585.         EndM
  3586.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3587.         IMPORT_CFM_FUNCTION PBCreateFileIDRefAsync
  3588.     ENDIF
  3589.  
  3590. ;
  3591. ; pascal OSErr PBResolveFileIDRefSync(HParmBlkPtr paramBlock)
  3592. ;
  3593.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3594.         ; parameters:
  3595.         ;    paramBlock      => A0
  3596.         ; returns:
  3597.         ;    OSErr           <= D0
  3598.         Macro
  3599.         _PBResolveFileIDRefSync
  3600.             moveq               #22,D0
  3601.             dc.w                $A260
  3602.         EndM
  3603.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3604.         IMPORT_CFM_FUNCTION PBResolveFileIDRefSync
  3605.     ENDIF
  3606.  
  3607. ;
  3608. ; pascal OSErr PBResolveFileIDRefAsync(HParmBlkPtr paramBlock)
  3609. ;
  3610.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3611.         ; parameters:
  3612.         ;    paramBlock      => A0
  3613.         ; returns:
  3614.         ;    OSErr           <= D0
  3615.         Macro
  3616.         _PBResolveFileIDRefAsync
  3617.             moveq               #22,D0
  3618.             dc.w                $A660
  3619.         EndM
  3620.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3621.         IMPORT_CFM_FUNCTION PBResolveFileIDRefAsync
  3622.     ENDIF
  3623.  
  3624. ;
  3625. ; pascal OSErr PBDeleteFileIDRefSync(HParmBlkPtr paramBlock)
  3626. ;
  3627.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3628.         ; parameters:
  3629.         ;    paramBlock      => A0
  3630.         ; returns:
  3631.         ;    OSErr           <= D0
  3632.         Macro
  3633.         _PBDeleteFileIDRefSync
  3634.             moveq               #21,D0
  3635.             dc.w                $A260
  3636.         EndM
  3637.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3638.         IMPORT_CFM_FUNCTION PBDeleteFileIDRefSync
  3639.     ENDIF
  3640.  
  3641. ;
  3642. ; pascal OSErr PBDeleteFileIDRefAsync(HParmBlkPtr paramBlock)
  3643. ;
  3644.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3645.         ; parameters:
  3646.         ;    paramBlock      => A0
  3647.         ; returns:
  3648.         ;    OSErr           <= D0
  3649.         Macro
  3650.         _PBDeleteFileIDRefAsync
  3651.             moveq               #21,D0
  3652.             dc.w                $A660
  3653.         EndM
  3654.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3655.         IMPORT_CFM_FUNCTION PBDeleteFileIDRefAsync
  3656.     ENDIF
  3657.  
  3658. ;
  3659. ; pascal OSErr PBGetForeignPrivsSync(HParmBlkPtr paramBlock)
  3660. ;
  3661.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3662.         ; parameters:
  3663.         ;    paramBlock      => A0
  3664.         ; returns:
  3665.         ;    OSErr           <= D0
  3666.         Macro
  3667.         _PBGetForeignPrivsSync
  3668.             moveq               #96,D0
  3669.             dc.w                $A260
  3670.         EndM
  3671.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3672.         IMPORT_CFM_FUNCTION PBGetForeignPrivsSync
  3673.     ENDIF
  3674.  
  3675. ;
  3676. ; pascal OSErr PBGetForeignPrivsAsync(HParmBlkPtr paramBlock)
  3677. ;
  3678.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3679.         ; parameters:
  3680.         ;    paramBlock      => A0
  3681.         ; returns:
  3682.         ;    OSErr           <= D0
  3683.         Macro
  3684.         _PBGetForeignPrivsAsync
  3685.             moveq               #96,D0
  3686.             dc.w                $A660
  3687.         EndM
  3688.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3689.         IMPORT_CFM_FUNCTION PBGetForeignPrivsAsync
  3690.     ENDIF
  3691.  
  3692. ;
  3693. ; pascal OSErr PBSetForeignPrivsSync(HParmBlkPtr paramBlock)
  3694. ;
  3695.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3696.         ; parameters:
  3697.         ;    paramBlock      => A0
  3698.         ; returns:
  3699.         ;    OSErr           <= D0
  3700.         Macro
  3701.         _PBSetForeignPrivsSync
  3702.             moveq               #97,D0
  3703.             dc.w                $A260
  3704.         EndM
  3705.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3706.         IMPORT_CFM_FUNCTION PBSetForeignPrivsSync
  3707.     ENDIF
  3708.  
  3709. ;
  3710. ; pascal OSErr PBSetForeignPrivsAsync(HParmBlkPtr paramBlock)
  3711. ;
  3712.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3713.         ; parameters:
  3714.         ;    paramBlock      => A0
  3715.         ; returns:
  3716.         ;    OSErr           <= D0
  3717.         Macro
  3718.         _PBSetForeignPrivsAsync
  3719.             moveq               #97,D0
  3720.             dc.w                $A660
  3721.         EndM
  3722.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3723.         IMPORT_CFM_FUNCTION PBSetForeignPrivsAsync
  3724.     ENDIF
  3725.  
  3726. ;   Desktop Manager  
  3727. ;
  3728. ; pascal OSErr PBDTGetPath(DTPBPtr paramBlock)
  3729. ;
  3730.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3731.         ; parameters:
  3732.         ;    paramBlock      => A0
  3733.         ; returns:
  3734.         ;    OSErr           <= D0
  3735.         Macro
  3736.         _PBDTGetPath
  3737.             moveq               #32,D0
  3738.             dc.w                $A260
  3739.         EndM
  3740.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3741.         IMPORT_CFM_FUNCTION PBDTGetPath
  3742.     ENDIF
  3743.  
  3744. ;
  3745. ; pascal OSErr PBDTCloseDown(DTPBPtr paramBlock)
  3746. ;
  3747.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3748.         ; parameters:
  3749.         ;    paramBlock      => A0
  3750.         ; returns:
  3751.         ;    OSErr           <= D0
  3752.         Macro
  3753.         _PBDTCloseDown
  3754.             moveq               #33,D0
  3755.             dc.w                $A260
  3756.         EndM
  3757.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3758.         IMPORT_CFM_FUNCTION PBDTCloseDown
  3759.     ENDIF
  3760.  
  3761. ;
  3762. ; pascal OSErr PBDTAddIconSync(DTPBPtr paramBlock)
  3763. ;
  3764.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3765.         ; parameters:
  3766.         ;    paramBlock      => A0
  3767.         ; returns:
  3768.         ;    OSErr           <= D0
  3769.         Macro
  3770.         _PBDTAddIconSync
  3771.             moveq               #34,D0
  3772.             dc.w                $A260
  3773.         EndM
  3774.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3775.         IMPORT_CFM_FUNCTION PBDTAddIconSync
  3776.     ENDIF
  3777.  
  3778. ;
  3779. ; pascal OSErr PBDTAddIconAsync(DTPBPtr paramBlock)
  3780. ;
  3781.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3782.         ; parameters:
  3783.         ;    paramBlock      => A0
  3784.         ; returns:
  3785.         ;    OSErr           <= D0
  3786.         Macro
  3787.         _PBDTAddIconAsync
  3788.             moveq               #34,D0
  3789.             dc.w                $A660
  3790.         EndM
  3791.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3792.         IMPORT_CFM_FUNCTION PBDTAddIconAsync
  3793.     ENDIF
  3794.  
  3795. ;
  3796. ; pascal OSErr PBDTGetIconSync(DTPBPtr paramBlock)
  3797. ;
  3798.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3799.         ; parameters:
  3800.         ;    paramBlock      => A0
  3801.         ; returns:
  3802.         ;    OSErr           <= D0
  3803.         Macro
  3804.         _PBDTGetIconSync
  3805.             moveq               #35,D0
  3806.             dc.w                $A260
  3807.         EndM
  3808.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3809.         IMPORT_CFM_FUNCTION PBDTGetIconSync
  3810.     ENDIF
  3811.  
  3812. ;
  3813. ; pascal OSErr PBDTGetIconAsync(DTPBPtr paramBlock)
  3814. ;
  3815.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3816.         ; parameters:
  3817.         ;    paramBlock      => A0
  3818.         ; returns:
  3819.         ;    OSErr           <= D0
  3820.         Macro
  3821.         _PBDTGetIconAsync
  3822.             moveq               #35,D0
  3823.             dc.w                $A660
  3824.         EndM
  3825.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3826.         IMPORT_CFM_FUNCTION PBDTGetIconAsync
  3827.     ENDIF
  3828.  
  3829. ;
  3830. ; pascal OSErr PBDTGetIconInfoSync(DTPBPtr paramBlock)
  3831. ;
  3832.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3833.         ; parameters:
  3834.         ;    paramBlock      => A0
  3835.         ; returns:
  3836.         ;    OSErr           <= D0
  3837.         Macro
  3838.         _PBDTGetIconInfoSync
  3839.             moveq               #36,D0
  3840.             dc.w                $A260
  3841.         EndM
  3842.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3843.         IMPORT_CFM_FUNCTION PBDTGetIconInfoSync
  3844.     ENDIF
  3845.  
  3846. ;
  3847. ; pascal OSErr PBDTGetIconInfoAsync(DTPBPtr paramBlock)
  3848. ;
  3849.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3850.         ; parameters:
  3851.         ;    paramBlock      => A0
  3852.         ; returns:
  3853.         ;    OSErr           <= D0
  3854.         Macro
  3855.         _PBDTGetIconInfoAsync
  3856.             moveq               #36,D0
  3857.             dc.w                $A660
  3858.         EndM
  3859.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3860.         IMPORT_CFM_FUNCTION PBDTGetIconInfoAsync
  3861.     ENDIF
  3862.  
  3863. ;
  3864. ; pascal OSErr PBDTAddAPPLSync(DTPBPtr paramBlock)
  3865. ;
  3866.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3867.         ; parameters:
  3868.         ;    paramBlock      => A0
  3869.         ; returns:
  3870.         ;    OSErr           <= D0
  3871.         Macro
  3872.         _PBDTAddAPPLSync
  3873.             moveq               #37,D0
  3874.             dc.w                $A260
  3875.         EndM
  3876.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3877.         IMPORT_CFM_FUNCTION PBDTAddAPPLSync
  3878.     ENDIF
  3879.  
  3880. ;
  3881. ; pascal OSErr PBDTAddAPPLAsync(DTPBPtr paramBlock)
  3882. ;
  3883.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3884.         ; parameters:
  3885.         ;    paramBlock      => A0
  3886.         ; returns:
  3887.         ;    OSErr           <= D0
  3888.         Macro
  3889.         _PBDTAddAPPLAsync
  3890.             moveq               #37,D0
  3891.             dc.w                $A660
  3892.         EndM
  3893.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3894.         IMPORT_CFM_FUNCTION PBDTAddAPPLAsync
  3895.     ENDIF
  3896.  
  3897. ;
  3898. ; pascal OSErr PBDTRemoveAPPLSync(DTPBPtr paramBlock)
  3899. ;
  3900.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3901.         ; parameters:
  3902.         ;    paramBlock      => A0
  3903.         ; returns:
  3904.         ;    OSErr           <= D0
  3905.         Macro
  3906.         _PBDTRemoveAPPLSync
  3907.             moveq               #38,D0
  3908.             dc.w                $A260
  3909.         EndM
  3910.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3911.         IMPORT_CFM_FUNCTION PBDTRemoveAPPLSync
  3912.     ENDIF
  3913.  
  3914. ;
  3915. ; pascal OSErr PBDTRemoveAPPLAsync(DTPBPtr paramBlock)
  3916. ;
  3917.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3918.         ; parameters:
  3919.         ;    paramBlock      => A0
  3920.         ; returns:
  3921.         ;    OSErr           <= D0
  3922.         Macro
  3923.         _PBDTRemoveAPPLAsync
  3924.             moveq               #38,D0
  3925.             dc.w                $A660
  3926.         EndM
  3927.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3928.         IMPORT_CFM_FUNCTION PBDTRemoveAPPLAsync
  3929.     ENDIF
  3930.  
  3931. ;
  3932. ; pascal OSErr PBDTGetAPPLSync(DTPBPtr paramBlock)
  3933. ;
  3934.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3935.         ; parameters:
  3936.         ;    paramBlock      => A0
  3937.         ; returns:
  3938.         ;    OSErr           <= D0
  3939.         Macro
  3940.         _PBDTGetAPPLSync
  3941.             moveq               #39,D0
  3942.             dc.w                $A260
  3943.         EndM
  3944.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3945.         IMPORT_CFM_FUNCTION PBDTGetAPPLSync
  3946.     ENDIF
  3947.  
  3948. ;
  3949. ; pascal OSErr PBDTGetAPPLAsync(DTPBPtr paramBlock)
  3950. ;
  3951.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3952.         ; parameters:
  3953.         ;    paramBlock      => A0
  3954.         ; returns:
  3955.         ;    OSErr           <= D0
  3956.         Macro
  3957.         _PBDTGetAPPLAsync
  3958.             moveq               #39,D0
  3959.             dc.w                $A660
  3960.         EndM
  3961.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3962.         IMPORT_CFM_FUNCTION PBDTGetAPPLAsync
  3963.     ENDIF
  3964.  
  3965. ;
  3966. ; pascal OSErr PBDTSetCommentSync(DTPBPtr paramBlock)
  3967. ;
  3968.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3969.         ; parameters:
  3970.         ;    paramBlock      => A0
  3971.         ; returns:
  3972.         ;    OSErr           <= D0
  3973.         Macro
  3974.         _PBDTSetCommentSync
  3975.             moveq               #40,D0
  3976.             dc.w                $A260
  3977.         EndM
  3978.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3979.         IMPORT_CFM_FUNCTION PBDTSetCommentSync
  3980.     ENDIF
  3981.  
  3982. ;
  3983. ; pascal OSErr PBDTSetCommentAsync(DTPBPtr paramBlock)
  3984. ;
  3985.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3986.         ; parameters:
  3987.         ;    paramBlock      => A0
  3988.         ; returns:
  3989.         ;    OSErr           <= D0
  3990.         Macro
  3991.         _PBDTSetCommentAsync
  3992.             moveq               #40,D0
  3993.             dc.w                $A660
  3994.         EndM
  3995.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3996.         IMPORT_CFM_FUNCTION PBDTSetCommentAsync
  3997.     ENDIF
  3998.  
  3999. ;
  4000. ; pascal OSErr PBDTRemoveCommentSync(DTPBPtr paramBlock)
  4001. ;
  4002.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4003.         ; parameters:
  4004.         ;    paramBlock      => A0
  4005.         ; returns:
  4006.         ;    OSErr           <= D0
  4007.         Macro
  4008.         _PBDTRemoveCommentSync
  4009.             moveq               #41,D0
  4010.             dc.w                $A260
  4011.         EndM
  4012.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4013.         IMPORT_CFM_FUNCTION PBDTRemoveCommentSync
  4014.     ENDIF
  4015.  
  4016. ;
  4017. ; pascal OSErr PBDTRemoveCommentAsync(DTPBPtr paramBlock)
  4018. ;
  4019.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4020.         ; parameters:
  4021.         ;    paramBlock      => A0
  4022.         ; returns:
  4023.         ;    OSErr           <= D0
  4024.         Macro
  4025.         _PBDTRemoveCommentAsync
  4026.             moveq               #41,D0
  4027.             dc.w                $A660
  4028.         EndM
  4029.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4030.         IMPORT_CFM_FUNCTION PBDTRemoveCommentAsync
  4031.     ENDIF
  4032.  
  4033. ;
  4034. ; pascal OSErr PBDTGetCommentSync(DTPBPtr paramBlock)
  4035. ;
  4036.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4037.         ; parameters:
  4038.         ;    paramBlock      => A0
  4039.         ; returns:
  4040.         ;    OSErr           <= D0
  4041.         Macro
  4042.         _PBDTGetCommentSync
  4043.             moveq               #42,D0
  4044.             dc.w                $A260
  4045.         EndM
  4046.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4047.         IMPORT_CFM_FUNCTION PBDTGetCommentSync
  4048.     ENDIF
  4049.  
  4050. ;
  4051. ; pascal OSErr PBDTGetCommentAsync(DTPBPtr paramBlock)
  4052. ;
  4053.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4054.         ; parameters:
  4055.         ;    paramBlock      => A0
  4056.         ; returns:
  4057.         ;    OSErr           <= D0
  4058.         Macro
  4059.         _PBDTGetCommentAsync
  4060.             moveq               #42,D0
  4061.             dc.w                $A660
  4062.         EndM
  4063.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4064.         IMPORT_CFM_FUNCTION PBDTGetCommentAsync
  4065.     ENDIF
  4066.  
  4067. ;
  4068. ; pascal OSErr PBDTFlushSync(DTPBPtr paramBlock)
  4069. ;
  4070.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4071.         ; parameters:
  4072.         ;    paramBlock      => A0
  4073.         ; returns:
  4074.         ;    OSErr           <= D0
  4075.         Macro
  4076.         _PBDTFlushSync
  4077.             moveq               #43,D0
  4078.             dc.w                $A260
  4079.         EndM
  4080.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4081.         IMPORT_CFM_FUNCTION PBDTFlushSync
  4082.     ENDIF
  4083.  
  4084. ;
  4085. ; pascal OSErr PBDTFlushAsync(DTPBPtr paramBlock)
  4086. ;
  4087.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4088.         ; parameters:
  4089.         ;    paramBlock      => A0
  4090.         ; returns:
  4091.         ;    OSErr           <= D0
  4092.         Macro
  4093.         _PBDTFlushAsync
  4094.             moveq               #43,D0
  4095.             dc.w                $A660
  4096.         EndM
  4097.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4098.         IMPORT_CFM_FUNCTION PBDTFlushAsync
  4099.     ENDIF
  4100.  
  4101. ;
  4102. ; pascal OSErr PBDTResetSync(DTPBPtr paramBlock)
  4103. ;
  4104.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4105.         ; parameters:
  4106.         ;    paramBlock      => A0
  4107.         ; returns:
  4108.         ;    OSErr           <= D0
  4109.         Macro
  4110.         _PBDTResetSync
  4111.             moveq               #44,D0
  4112.             dc.w                $A260
  4113.         EndM
  4114.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4115.         IMPORT_CFM_FUNCTION PBDTResetSync
  4116.     ENDIF
  4117.  
  4118. ;
  4119. ; pascal OSErr PBDTResetAsync(DTPBPtr paramBlock)
  4120. ;
  4121.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4122.         ; parameters:
  4123.         ;    paramBlock      => A0
  4124.         ; returns:
  4125.         ;    OSErr           <= D0
  4126.         Macro
  4127.         _PBDTResetAsync
  4128.             moveq               #44,D0
  4129.             dc.w                $A660
  4130.         EndM
  4131.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4132.         IMPORT_CFM_FUNCTION PBDTResetAsync
  4133.     ENDIF
  4134.  
  4135. ;
  4136. ; pascal OSErr PBDTGetInfoSync(DTPBPtr paramBlock)
  4137. ;
  4138.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4139.         ; parameters:
  4140.         ;    paramBlock      => A0
  4141.         ; returns:
  4142.         ;    OSErr           <= D0
  4143.         Macro
  4144.         _PBDTGetInfoSync
  4145.             moveq               #45,D0
  4146.             dc.w                $A260
  4147.         EndM
  4148.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4149.         IMPORT_CFM_FUNCTION PBDTGetInfoSync
  4150.     ENDIF
  4151.  
  4152. ;
  4153. ; pascal OSErr PBDTGetInfoAsync(DTPBPtr paramBlock)
  4154. ;
  4155.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4156.         ; parameters:
  4157.         ;    paramBlock      => A0
  4158.         ; returns:
  4159.         ;    OSErr           <= D0
  4160.         Macro
  4161.         _PBDTGetInfoAsync
  4162.             moveq               #45,D0
  4163.             dc.w                $A660
  4164.         EndM
  4165.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4166.         IMPORT_CFM_FUNCTION PBDTGetInfoAsync
  4167.     ENDIF
  4168.  
  4169. ;
  4170. ; pascal OSErr PBDTOpenInform(DTPBPtr paramBlock)
  4171. ;
  4172.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4173.         ; parameters:
  4174.         ;    paramBlock      => A0
  4175.         ; returns:
  4176.         ;    OSErr           <= D0
  4177.         Macro
  4178.         _PBDTOpenInform
  4179.             moveq               #46,D0
  4180.             dc.w                $A060
  4181.         EndM
  4182.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4183.         IMPORT_CFM_FUNCTION PBDTOpenInform
  4184.     ENDIF
  4185.  
  4186. ;
  4187. ; pascal OSErr PBDTDeleteSync(DTPBPtr paramBlock)
  4188. ;
  4189.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4190.         ; parameters:
  4191.         ;    paramBlock      => A0
  4192.         ; returns:
  4193.         ;    OSErr           <= D0
  4194.         Macro
  4195.         _PBDTDeleteSync
  4196.             moveq               #47,D0
  4197.             dc.w                $A060
  4198.         EndM
  4199.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4200.         IMPORT_CFM_FUNCTION PBDTDeleteSync
  4201.     ENDIF
  4202.  
  4203. ;
  4204. ; pascal OSErr PBDTDeleteAsync(DTPBPtr paramBlock)
  4205. ;
  4206.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4207.         ; parameters:
  4208.         ;    paramBlock      => A0
  4209.         ; returns:
  4210.         ;    OSErr           <= D0
  4211.         Macro
  4212.         _PBDTDeleteAsync
  4213.             moveq               #47,D0
  4214.             dc.w                $A460
  4215.         EndM
  4216.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4217.         IMPORT_CFM_FUNCTION PBDTDeleteAsync
  4218.     ENDIF
  4219.  
  4220. ;   VolumeMount traps  
  4221. ;
  4222. ; pascal OSErr PBGetVolMountInfoSize(ParmBlkPtr paramBlock)
  4223. ;
  4224.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4225.         ; parameters:
  4226.         ;    paramBlock      => A0
  4227.         ; returns:
  4228.         ;    OSErr           <= D0
  4229.         Macro
  4230.         _PBGetVolMountInfoSize
  4231.             moveq               #63,D0
  4232.             dc.w                $A260
  4233.         EndM
  4234.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4235.         IMPORT_CFM_FUNCTION PBGetVolMountInfoSize
  4236.     ENDIF
  4237.  
  4238. ;
  4239. ; pascal OSErr PBGetVolMountInfo(ParmBlkPtr paramBlock)
  4240. ;
  4241.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4242.         ; parameters:
  4243.         ;    paramBlock      => A0
  4244.         ; returns:
  4245.         ;    OSErr           <= D0
  4246.         Macro
  4247.         _PBGetVolMountInfo
  4248.             moveq               #64,D0
  4249.             dc.w                $A260
  4250.         EndM
  4251.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4252.         IMPORT_CFM_FUNCTION PBGetVolMountInfo
  4253.     ENDIF
  4254.  
  4255. ;
  4256. ; pascal OSErr PBVolumeMount(ParmBlkPtr paramBlock)
  4257. ;
  4258.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4259.         ; parameters:
  4260.         ;    paramBlock      => A0
  4261.         ; returns:
  4262.         ;    OSErr           <= D0
  4263.         Macro
  4264.         _PBVolumeMount
  4265.             moveq               #65,D0
  4266.             dc.w                $A260
  4267.         EndM
  4268.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4269.         IMPORT_CFM_FUNCTION PBVolumeMount
  4270.     ENDIF
  4271.  
  4272. ;   FSp traps  
  4273. ;
  4274. ; pascal OSErr FSMakeFSSpec(short vRefNum, long dirID, ConstStr255Param fileName, FSSpec *spec)
  4275. ;
  4276.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4277.         Macro
  4278.         _FSMakeFSSpec
  4279.             moveq               #1,D0
  4280.             dc.w                $AA52
  4281.         EndM
  4282.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4283.         IMPORT_CFM_FUNCTION FSMakeFSSpec
  4284.     ENDIF
  4285.  
  4286. ;
  4287. ; pascal OSErr FSpOpenDF(const FSSpec *spec, SInt8 permission, short *refNum)
  4288. ;
  4289.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4290.         Macro
  4291.         _FSpOpenDF
  4292.             moveq               #2,D0
  4293.             dc.w                $AA52
  4294.         EndM
  4295.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4296.         IMPORT_CFM_FUNCTION FSpOpenDF
  4297.     ENDIF
  4298.  
  4299. ;
  4300. ; pascal OSErr FSpOpenRF(const FSSpec *spec, SInt8 permission, short *refNum)
  4301. ;
  4302.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4303.         Macro
  4304.         _FSpOpenRF
  4305.             moveq               #3,D0
  4306.             dc.w                $AA52
  4307.         EndM
  4308.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4309.         IMPORT_CFM_FUNCTION FSpOpenRF
  4310.     ENDIF
  4311.  
  4312. ;
  4313. ; pascal OSErr FSpCreate(const FSSpec *spec, OSType creator, OSType fileType, ScriptCode scriptTag)
  4314. ;
  4315.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4316.         Macro
  4317.         _FSpCreate
  4318.             moveq               #4,D0
  4319.             dc.w                $AA52
  4320.         EndM
  4321.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4322.         IMPORT_CFM_FUNCTION FSpCreate
  4323.     ENDIF
  4324.  
  4325. ;
  4326. ; pascal OSErr FSpDirCreate(const FSSpec *spec, ScriptCode scriptTag, long *createdDirID)
  4327. ;
  4328.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4329.         Macro
  4330.         _FSpDirCreate
  4331.             moveq               #5,D0
  4332.             dc.w                $AA52
  4333.         EndM
  4334.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4335.         IMPORT_CFM_FUNCTION FSpDirCreate
  4336.     ENDIF
  4337.  
  4338. ;
  4339. ; pascal OSErr FSpDelete(const FSSpec *spec)
  4340. ;
  4341.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4342.         Macro
  4343.         _FSpDelete
  4344.             moveq               #6,D0
  4345.             dc.w                $AA52
  4346.         EndM
  4347.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4348.         IMPORT_CFM_FUNCTION FSpDelete
  4349.     ENDIF
  4350.  
  4351. ;
  4352. ; pascal OSErr FSpGetFInfo(const FSSpec *spec, FInfo *fndrInfo)
  4353. ;
  4354.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4355.         Macro
  4356.         _FSpGetFInfo
  4357.             moveq               #7,D0
  4358.             dc.w                $AA52
  4359.         EndM
  4360.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4361.         IMPORT_CFM_FUNCTION FSpGetFInfo
  4362.     ENDIF
  4363.  
  4364. ;
  4365. ; pascal OSErr FSpSetFInfo(const FSSpec *spec, const FInfo *fndrInfo)
  4366. ;
  4367.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4368.         Macro
  4369.         _FSpSetFInfo
  4370.             moveq               #8,D0
  4371.             dc.w                $AA52
  4372.         EndM
  4373.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4374.         IMPORT_CFM_FUNCTION FSpSetFInfo
  4375.     ENDIF
  4376.  
  4377. ;
  4378. ; pascal OSErr FSpSetFLock(const FSSpec *spec)
  4379. ;
  4380.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4381.         Macro
  4382.         _FSpSetFLock
  4383.             moveq               #9,D0
  4384.             dc.w                $AA52
  4385.         EndM
  4386.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4387.         IMPORT_CFM_FUNCTION FSpSetFLock
  4388.     ENDIF
  4389.  
  4390. ;
  4391. ; pascal OSErr FSpRstFLock(const FSSpec *spec)
  4392. ;
  4393.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4394.         Macro
  4395.         _FSpRstFLock
  4396.             moveq               #10,D0
  4397.             dc.w                $AA52
  4398.         EndM
  4399.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4400.         IMPORT_CFM_FUNCTION FSpRstFLock
  4401.     ENDIF
  4402.  
  4403. ;
  4404. ; pascal OSErr FSpRename(const FSSpec *spec, ConstStr255Param newName)
  4405. ;
  4406.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4407.         Macro
  4408.         _FSpRename
  4409.             moveq               #11,D0
  4410.             dc.w                $AA52
  4411.         EndM
  4412.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4413.         IMPORT_CFM_FUNCTION FSpRename
  4414.     ENDIF
  4415.  
  4416. ;
  4417. ; pascal OSErr FSpCatMove(const FSSpec *source, const FSSpec *dest)
  4418. ;
  4419.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4420.         Macro
  4421.         _FSpCatMove
  4422.             moveq               #12,D0
  4423.             dc.w                $AA52
  4424.         EndM
  4425.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4426.         IMPORT_CFM_FUNCTION FSpCatMove
  4427.     ENDIF
  4428.  
  4429. ;
  4430. ; pascal OSErr FSpExchangeFiles(const FSSpec *source, const FSSpec *dest)
  4431. ;
  4432.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4433.         Macro
  4434.         _FSpExchangeFiles
  4435.             moveq               #15,D0
  4436.             dc.w                $AA52
  4437.         EndM
  4438.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4439.         IMPORT_CFM_FUNCTION FSpExchangeFiles
  4440.     ENDIF
  4441.  
  4442.  
  4443. ;
  4444. ; pascal OSErr PBShareSync(HParmBlkPtr paramBlock)
  4445. ;
  4446.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4447.         ; parameters:
  4448.         ;    paramBlock      => A0
  4449.         ; returns:
  4450.         ;    OSErr           <= D0
  4451.         Macro
  4452.         _PBShareSync
  4453.             moveq               #66,D0
  4454.             dc.w                $A260
  4455.         EndM
  4456.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4457.         IMPORT_CFM_FUNCTION PBShareSync
  4458.     ENDIF
  4459.  
  4460. ;
  4461. ; pascal OSErr PBShareAsync(HParmBlkPtr paramBlock)
  4462. ;
  4463.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4464.         ; parameters:
  4465.         ;    paramBlock      => A0
  4466.         ; returns:
  4467.         ;    OSErr           <= D0
  4468.         Macro
  4469.         _PBShareAsync
  4470.             moveq               #66,D0
  4471.             dc.w                $A660
  4472.         EndM
  4473.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4474.         IMPORT_CFM_FUNCTION PBShareAsync
  4475.     ENDIF
  4476.  
  4477. ;
  4478. ; pascal OSErr PBUnshareSync(HParmBlkPtr paramBlock)
  4479. ;
  4480.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4481.         ; parameters:
  4482.         ;    paramBlock      => A0
  4483.         ; returns:
  4484.         ;    OSErr           <= D0
  4485.         Macro
  4486.         _PBUnshareSync
  4487.             moveq               #67,D0
  4488.             dc.w                $A260
  4489.         EndM
  4490.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4491.         IMPORT_CFM_FUNCTION PBUnshareSync
  4492.     ENDIF
  4493.  
  4494. ;
  4495. ; pascal OSErr PBUnshareAsync(HParmBlkPtr paramBlock)
  4496. ;
  4497.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4498.         ; parameters:
  4499.         ;    paramBlock      => A0
  4500.         ; returns:
  4501.         ;    OSErr           <= D0
  4502.         Macro
  4503.         _PBUnshareAsync
  4504.             moveq               #67,D0
  4505.             dc.w                $A660
  4506.         EndM
  4507.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4508.         IMPORT_CFM_FUNCTION PBUnshareAsync
  4509.     ENDIF
  4510.  
  4511. ;
  4512. ; pascal OSErr PBGetUGEntrySync(HParmBlkPtr paramBlock)
  4513. ;
  4514.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4515.         ; parameters:
  4516.         ;    paramBlock      => A0
  4517.         ; returns:
  4518.         ;    OSErr           <= D0
  4519.         Macro
  4520.         _PBGetUGEntrySync
  4521.             moveq               #68,D0
  4522.             dc.w                $A260
  4523.         EndM
  4524.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4525.         IMPORT_CFM_FUNCTION PBGetUGEntrySync
  4526.     ENDIF
  4527.  
  4528. ;
  4529. ; pascal OSErr PBGetUGEntryAsync(HParmBlkPtr paramBlock)
  4530. ;
  4531.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4532.         ; parameters:
  4533.         ;    paramBlock      => A0
  4534.         ; returns:
  4535.         ;    OSErr           <= D0
  4536.         Macro
  4537.         _PBGetUGEntryAsync
  4538.             moveq               #68,D0
  4539.             dc.w                $A660
  4540.         EndM
  4541.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4542.         IMPORT_CFM_FUNCTION PBGetUGEntryAsync
  4543.     ENDIF
  4544.  
  4545.  
  4546.  
  4547.  
  4548.     IF TARGET_CPU_68K THEN
  4549. ;    PBGetAltAccess and PBSetAltAccess are obsolete and will not be supported 
  4550. ;    on PowerPC. Equivalent functionality is provided by the routines 
  4551. ;    PBGetForeignPrivs and PBSetForeignPrivs.
  4552. ;
  4553.  
  4554. ;
  4555. ; pascal OSErr PBGetAltAccessSync(HParmBlkPtr paramBlock)
  4556. ;
  4557.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4558.         ; parameters:
  4559.         ;    paramBlock      => A0
  4560.         ; returns:
  4561.         ;    OSErr           <= D0
  4562.         Macro
  4563.         _PBGetAltAccessSync
  4564.             moveq               #96,D0
  4565.             dc.w                $A060
  4566.         EndM
  4567.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4568.         IMPORT_CFM_FUNCTION PBGetAltAccessSync
  4569.     ENDIF
  4570.  
  4571. ;
  4572. ; pascal OSErr PBGetAltAccessAsync(HParmBlkPtr paramBlock)
  4573. ;
  4574.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4575.         ; parameters:
  4576.         ;    paramBlock      => A0
  4577.         ; returns:
  4578.         ;    OSErr           <= D0
  4579.         Macro
  4580.         _PBGetAltAccessAsync
  4581.             moveq               #96,D0
  4582.             dc.w                $A460
  4583.         EndM
  4584.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4585.         IMPORT_CFM_FUNCTION PBGetAltAccessAsync
  4586.     ENDIF
  4587.  
  4588. ;
  4589. ; pascal OSErr PBSetAltAccessSync(HParmBlkPtr paramBlock)
  4590. ;
  4591.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4592.         ; parameters:
  4593.         ;    paramBlock      => A0
  4594.         ; returns:
  4595.         ;    OSErr           <= D0
  4596.         Macro
  4597.         _PBSetAltAccessSync
  4598.             moveq               #97,D0
  4599.             dc.w                $A060
  4600.         EndM
  4601.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4602.         IMPORT_CFM_FUNCTION PBSetAltAccessSync
  4603.     ENDIF
  4604.  
  4605. ;
  4606. ; pascal OSErr PBSetAltAccessAsync(HParmBlkPtr paramBlock)
  4607. ;
  4608.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4609.         ; parameters:
  4610.         ;    paramBlock      => A0
  4611.         ; returns:
  4612.         ;    OSErr           <= D0
  4613.         Macro
  4614.         _PBSetAltAccessAsync
  4615.             moveq               #97,D0
  4616.             dc.w                $A460
  4617.         EndM
  4618.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4619.         IMPORT_CFM_FUNCTION PBSetAltAccessAsync
  4620.     ENDIF
  4621.  
  4622.     ENDIF    ; TARGET_CPU_68K
  4623.  
  4624. ;    The PBxxx() routines are obsolete.  
  4625. ;    
  4626. ;    Use the PBxxxSync() or PBxxxAsync() version instead.
  4627. ;
  4628.  
  4629.     IF OLDROUTINELOCATIONS THEN
  4630.     ENDIF    ; OLDROUTINELOCATIONS
  4631.     ENDIF ; __FILES__ 
  4632.  
  4633.